en passant le formulaire parent sur l'événement onclick de fonction javascript
Salut, je suis en train de passer des variables sur l'événement onclick d'une fonction javascript. Je suis en train de la façon suivante, je ne peux pas obtenir la valeur d'entrée dans la fonction javascript.(Je suis dans l'attente d'une alerte de 1.) Est-ce la bonne manière de procéder? S'il vous plaît aider.
<head>
<script>
function submit_value(form) {
alert(form.ip.value);
}
</script>
</head>
<table>
<tr>
<form>
<td>
<input id="ip" type="text" value="1">
</td>
<td>
<a href="javascript:;" onClick="submit_value(this)">Button</a>
</td>
</form>
</tr>
</table>
OriginalL'auteur user1051505 | 2012-12-18
Vous devez vous connecter pour publier un commentaire.
Votre script ne sais pas ce que
form
est. Vous devez spécifierdocument.forms[0].ip.value
à la place.Si il y a plus d'un formulaire sur le document, alors il sera mieux si vous stockez l'élément de formulaire dans une variable de première. Vous pouvez avoir un id sur la forme pour que...
<form id="formID">
et dans submit_value fonction, vous pouvez avoir
var myForm = document.getElementById('formID');
alert(myForm.ip.value);
Edit:
Vous pouvez utiliser
this.form
pour onClick de la balise d'ancrage.Le Point est, il pourrait être n nombre de formes dynamiques de ce genre. document.forms[0].ip.la valeur serait comme de savoir quelle forme que je veux envoyer. Je veux passer le formulaire parent pour la balise d'ancrage. Comment dois-je faire?
OriginalL'auteur Faisal Sayed
Modifier la fonction:
Lorsque vous écrivez
submit_value(this)
, la valeur dethis
est en fait l'élément<a>
lui-même, non pas sur la forme.Si il y a beaucoup de formes dynamiques, alors vous ne devriez pas utiliser
id="ip"
depuis id doit être uniqueok, la classe devrait y faire
Vous pouvez utiliser
this.form
dans ce cas. Voir modification de ma réponse.Génération dynamique de l'ids peut travailler.
id="form1_ip"
,id="form2_ip"
OriginalL'auteur Ming-Tang
Je vais supposer que vous pouvez utiliser jquery. Les sélecteurs sont beaucoup simple.
Modifier le formulaire ci-dessous html à partir de
à
Et puis votre JS ressemblera
OriginalL'auteur Pratik Mandrekar