diomede
27-12-2006, 16:36
Ciao a tutti.
Ho creato una pagina XHTML nella quale voglio inserire dinamicamente le righe di una tabella in base all'input dell'utente. Fatto ciò vorrei poter visualizzare le scritte inserite negli input text delle righe della tabella in un'altra tabella che verrà sovrascritta nella pagina che abbia nelle celle solo i dati senza gli input text. Ho provato con questo codice ma mi scrive solo il primo input text. Dovrei recuperare ogni input text ma non ci riesco, mi prende solo il primo. Al click dell'invia mi dice necessario oggetto, in corrispondenza del primo array nel quale memorizzo gli input text nome.
Qualcuno potrebbe aiutarmi?
Grazie
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title></title>
<script type="text/javascript">
<!--
var elementi= "";
var volte= 0;
var campi= 0;
arr_nome = new Array();
arr_cognome = new Array();
arr_indirizzo = new Array();
function visual(campi)
{
for(j=1;j<=campi;j++){
arr_nome += document.getElementById('nome' + j).value;
arr_cognome += document.getElementById('cognome' + j ).value;
arr_indirizzo += document.getElementById('indirizzo' + j).value;
document.write("<br />" + arr_nome + " " + arr_cognome + " " + arr_indirizzo);
}
}
function aggiungi(campi) {
volte++;
if (volte>1)
window.alert("non è possibile aggiungere i campi due volte; eventualmente aggiornare la pagina");
else {
elementi += "<table border=\"4\" cellspacing=\"4\" cellpadding=\"4\"><form name=\"form2\" action=\"''\">";
for(var i=1; i<=campi; i++) {
elementi += "<tr><td>nome <input type=\"text\" name=\"nome\"" + i + " size=\"20\"></td><td> cognome <input type=\"text\" name=\"cognome\"" + i + " size=\"20\"></td><td> indirizzo <input type=\"text\" name=\"indirizzo\"" + i + " size=\"40\"></td></tr>";
}
elementi += "<tr><td colspan=\"3\" align=\"center\"><input type=\"button\" name=\"Invia\" value=\"INVIA\" onclick=\"visual(document.form1.num.value)\"> <input type=\"reset\" name=\"Cancella\" value=\"CANCELLA\"></td></tr></form></table>";
document.getElementById('agg').innerHTML += elementi;
}
}
// -->
</script>
</head>
<body>
<p>Quante righe vuoi inserire?
<form name="form1">
<input type=text name="num" size=3>
<input type=button name="bottone" value="OK" OnClick="aggiungi(document.form1.num.value)">
</form></p>
<p id="agg"></p>
</body>
</html>
Ho creato una pagina XHTML nella quale voglio inserire dinamicamente le righe di una tabella in base all'input dell'utente. Fatto ciò vorrei poter visualizzare le scritte inserite negli input text delle righe della tabella in un'altra tabella che verrà sovrascritta nella pagina che abbia nelle celle solo i dati senza gli input text. Ho provato con questo codice ma mi scrive solo il primo input text. Dovrei recuperare ogni input text ma non ci riesco, mi prende solo il primo. Al click dell'invia mi dice necessario oggetto, in corrispondenza del primo array nel quale memorizzo gli input text nome.
Qualcuno potrebbe aiutarmi?
Grazie
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title></title>
<script type="text/javascript">
<!--
var elementi= "";
var volte= 0;
var campi= 0;
arr_nome = new Array();
arr_cognome = new Array();
arr_indirizzo = new Array();
function visual(campi)
{
for(j=1;j<=campi;j++){
arr_nome += document.getElementById('nome' + j).value;
arr_cognome += document.getElementById('cognome' + j ).value;
arr_indirizzo += document.getElementById('indirizzo' + j).value;
document.write("<br />" + arr_nome + " " + arr_cognome + " " + arr_indirizzo);
}
}
function aggiungi(campi) {
volte++;
if (volte>1)
window.alert("non è possibile aggiungere i campi due volte; eventualmente aggiornare la pagina");
else {
elementi += "<table border=\"4\" cellspacing=\"4\" cellpadding=\"4\"><form name=\"form2\" action=\"''\">";
for(var i=1; i<=campi; i++) {
elementi += "<tr><td>nome <input type=\"text\" name=\"nome\"" + i + " size=\"20\"></td><td> cognome <input type=\"text\" name=\"cognome\"" + i + " size=\"20\"></td><td> indirizzo <input type=\"text\" name=\"indirizzo\"" + i + " size=\"40\"></td></tr>";
}
elementi += "<tr><td colspan=\"3\" align=\"center\"><input type=\"button\" name=\"Invia\" value=\"INVIA\" onclick=\"visual(document.form1.num.value)\"> <input type=\"reset\" name=\"Cancella\" value=\"CANCELLA\"></td></tr></form></table>";
document.getElementById('agg').innerHTML += elementi;
}
}
// -->
</script>
</head>
<body>
<p>Quante righe vuoi inserire?
<form name="form1">
<input type=text name="num" size=3>
<input type=button name="bottone" value="OK" OnClick="aggiungi(document.form1.num.value)">
</form></p>
<p id="agg"></p>
</body>
</html>