attribut NAME d'un INPUT [JAVASCRIPT + DOM] - Programmation
Marsh Posté le 11-08-2001 à 00:31:11
essaye déjà document.myForm.mon_nom .
ton text.methode() est très louche : text est défini deux fois dans ton exemple, change t il les deux, ... ?
sinon y'a toujours moyen de récupérer tes éléments avec la ... liste des éléments de form :
for (i=0; i<document.myForm.elements.length; i++)
{
alert(document.myForm.elements[i].value;
}
Marsh Posté le 13-08-2001 à 17:26:51
je vois pas pkoi mon text.methode() est louche : je le definis 1 seule fois comme ca :
myform=document.getElementById("myForm" );
mytablebody=myform.getElementsByTagName("tbody" ).i
tem(0);
line=mytablebody.getElementsByTagName("TR" ).item
(1);
cell=line.getElementsByTagName("TD" ).item(1);
text=cell.childNodes.item(0);
donc dans le cas ki m'interresse, text represente :
<INPUT TYPE="text" FIELD="$id">
et je veux transformer ca en :
<INPUT TYPE="text" FIELD="$id" VALUE="id" NAME="i_id">
et ca marche pas
[edtdd]--Message édité par grahf--[/edtdd]
Marsh Posté le 13-08-2001 à 17:31:38
je viens de trouver une solution :
au lieu de faire un
text.setAttribute("name", "mon_nom" );
je fais un
text.setAttribute("id", "mon_nom" );
et je recupere les champs exactement de la meme facon
Marsh Posté le 10-08-2001 à 23:45:34
je modifie un formulaire a l'aide de DOM :
<form id="myForm" name="form1" onSubmit="editer()">
<table>
<tr>
<td>Id: </td>
<td><INPUT type="text" field="$id"></td>
</tr>
<tr>
<td>Name: </td>
<td><INPUT type="text" field="$name"></td>
</tr>
<tr>
<td><INPUT type="submit" value="modifier"></td>
</tr>
</table>
</form>
si je veux modifier le champ d'un input, je fais :
text.setAttribute("value", "ma_nouvelle_valeur" );
(ou text represente dans DOM la balise INPUT), et ca marche tres bien.
Si maintenant je veux creer un attribut NAME a cet INPUT (pour pouvoir recuperer la valeur du champ dans mon submit) je fais :
text.setAttribute("name", "mon_nom" );
(un text.getAttribute("name" ); me donne bien "mon_nom" )
Mais dans ma fonction JS appelle par le onSubmit, quand je fais un :
function editer()
{
alert(document.form1.mon_nom.value);
}
il me dit qu'il connait pas le champ mon_nom
Merci d'avance