Si vous souhaitez faire référence à un objet de formulaire dans votre page, vous pouvez utiliser l'objet 'document.forms', c'est-à-dire un tableau d'objets de formulaire dans le document. supposons que nous avons une forme comme ceci:
<form method="post" action="somthing.php" name="myContactForm" id="contact_form">
<input type="text" name="custList" id="custListId" />
</form>
pour accéder à la valeur d'une manière correcte, vous pouvez utiliser l'une de ces méthodes: première acccess la forme, l'élément.
var form = document.forms['myContactForm']; // use the 'name' attribute as the array key
// or if this is the first form appeared in the page. otherwise increase the index number to match the position of your target form.
var form = document.forms[0];
// or access the form directly
var form = document.getElementById('contact_form');
// now get the element, from the form. you can access form elements, by using their name attribute as the key in the elemetns array property of the form object.
var cust = form.elements['custList'].value();
ou vous pouvez accéder à un élément de formulaire directement, sans aucune forme. vous pouvez référencer n'importe quel élément du document par son identifiant, directement. Aucune forme n'est nécessaire ici.
var cust = document.getElementById('custListId');
toutes ces déclarations sont valables JavaScript qui fonctionnent sur IE, Firefox, Opera, Chrome, etc. cependant vous pouvez vous référer à un objet de forme dans IE, simplement appeler son attribut « nom ». si cette ligne fonctionne dans IE (et comme vous dites, le chrome je ne savais pas que le chrome gère.):
var cust = myContactForm.custList.value();
IE tente de cartographier les propriétés de niveau de fenêtre inconnue (comme myContactForm) à des éléments en faisant correspondre à leur attribut 'name'.
Je ne sais pas comment vous remercier tous. Toutes les réponses m'ont vraiment aidé à mieux comprendre cela. – datatoo
@scott - vous êtes les bienvenus. Il y a un moyen facile de remercier tout le monde - acceptez la réponse qui a résolu votre problème (utilisez la coche à côté). Vous pouvez également mettre à jour les réponses qui vous ont aidé (mais vous aurez besoin de 15 réputation pour cela). – Kobi