Si vous avez une référence à un champ dans le formulaire ou un événement, vous n'avez pas besoin de rechercher explicitement le formulaire car chaque champ de formulaire a un attribut form
qui pointe vers son formulaire parent.
Si vous avez un événement, il contiendra un attribut target
qui pointe vers le champ de formulaire qui l'a déclenché, ce qui signifie que vous pouvez accéder au formulaire via myEvent.target.form
.
Voici un exemple sans aucun code de recherche de formulaire.
<html>
<body>
<form name="frm">
<input type="text" name="login"><br/>
<input type="password" name="password"><br/>
<button type="submit" onclick="doLogin()">Login</button>
</form>
<script>
function doLogin(e) {
e = e || window.event;
e.preventDefault();
var form = e.target.form;
alert("user:" + form.login.value + " password:" + form.password.value);
}
</script>
</body>
</html>
Si vous avez plusieurs formulaires sur la page que vous n'avez pas encore besoin de les étiqueter par nom ou identifiant, parce que vous aurez toujours l'instance de forme correcte par l'événement ou par une référence à un champ.
tant qu'il n'y a pas de sélectionner ou textareas ;-) – Gurnard
Pouvez-vous le montrer dans un cas d'utilisation avec l'application de plusieurs entrées avec des valeurs qu'il est saisissant? –
Je préfère 'document.forms [" nom_formulaire "]. GetElementByClassName (" myClass ")' –