2016-07-17 19 views
0

Ich war unter dem Eindruck, wenn val verwendet wird automatisch den Wert eines Textfelds im Selektor genannt. Ich habe mehrere Eingabetextfelder und möchten, dass sie alle gesetzt werden mit val:Verwirrt auf jQuery val

<input type="text" id="firstName" name="firstName" size="20" class="gotowp-input-text required"> 
<input type="text" id="lastName" name="lastName" size="20" class="gotowp-input-text required"> 
<input type="text" id="email" name="email" size="20" class="gotowp-input-text required email"> 

Ich habe zwei Sätze dieser Eingabetextfelder, und ich versuche, sie beide mit setzen:

jQuery(document).ready(function($){ 
$("#firstName").val("Test"); 
$("#lastName").val("Test2"); 
$("#email").val("[email protected]"); 
}); 

Bitte sehen:

https://jsfiddle.net/bg1pdbw2/

jQuery wird die erste Wählschalter es sieht aber nicht die zweite. Sie haben den gleichen Namen. Danke Jungs!

Antwort

1

Sie können IDs nicht erneut verwenden. Sie haben dieselbe ID für dieselbe Eingabe ausgewählt, die nicht zulässig ist.

Stattdessen sollten Sie Ihre Eingaben mit ihrem Namen auswählen:

$('input[name="lastName"]').val('Test2'); 

Arbeitsbeispiel: https://jsfiddle.net/bg1pdbw2/3/

+0

Vielen Dank. Ich habe das ausprobiert, aber wegen meines PHP-Codes war es ein Konflikt mit der äußeren Klammer. Ich musste die innere Doppelklammer entfernen und das Äußere in das Doppelte umwandeln. Danke Brad – zduffy

0

Die Grundregel für IDs, eine eindeutige ID pro Seite zu haben. Verwenden Sie die Klasse statt der ID, damit sie funktioniert.

+0

http://stackoverflow.com/questions/33601687/difference-between-id-and-class – vvr02

+0

Überprüfen Sie obigen Link für weitere Details – vvr02

+0

Richtig. Ich verstehe das, aber dieser Code wurde über PHP generiert und wollte nicht mit dem PHP fertig werden. Vielen Dank! – zduffy