PDA

View Full Version : [JScript] Domanda su accesso ai form


znick
20-06-2006, 15:00
Ciao a tutti.
sto preparando un sito in php.

ho una schermata in cui credo una tabella partendo dai risultati di una query sql.
ogni riga della tabella contiene un input di testo, che ho chiamato "codice$i" (dove $i è il contatore del ciclo che crea le righe).

ora ho bisogno di un jscript che scriva dei valori in quelle righe, ma non so come fare ad accedere agli elementi "codice$i"

cito il mio codice php:

while ( $row = $db->sql_fetchrow($result) ) {

echo "<tr>";
echo " <td>$i</td>\n";
echo " <td>" . $row['Title'] . "</td>";
echo " <td>" . $row['Name'] . "</td>";
echo " <td><input type=\"text\" name=\"Cod$i\" id=\"Cod$i\"></td>";
echo "</tr>";

$i++;
}


ecco, sto cercando di fare un jscript che vada a scrivere un valore in quei campi di testo. il problema è: come faccio a dare un nome al campo, se questo contiene una variabile nel proprio nome?

codice jscript che non funziona... :(


function genera() {
var i;
for (i=1; i<=contatorebarre; i++) {
document.forms.frm.Cod+i.value = XX;
}
}

LNdemon
20-06-2006, 18:45
devi usare l'eval proprio come in php
eval("document.forms.frm.Cod"+i".value = XX;");
comunque, se al posto di dare un codice che assegna progressivamente i nomi, mette delle parentesi quadre:
[es]
echo " <td><input type=\"text\" name=\"Cod[]\" id=\"Cod$i\"></td>";
Cod diventa un array sia per js sia per php, infatti in php arrivera come:
$_POST['Cod'][numeroprogressivo] e in js la si puo richiamare con document.forms.frm.Cod[i].value

znick
21-06-2006, 09:17
grazie, molto utile!

ora funziona.