Sélection de jQuery avec des identifiants dynamiques
J'ai un formulaire qui est généré dynamiquement, et a généré dynamiquement id (et potentiellement des classes). Les formes sont les mêmes, mais elles disposent d'une id qui s'ajoute à la fin.
Comment puis-je sélectionner chaque paire d'entrées et appliquer le code de chacun?
J'ai essayé avec $('input[id^=@id_airline_for_]') mais ne pouvait pas arriver à voler. Je pense que je suis absent de certains fondamentaux jQuery connaissances qui me retient car je suis sûr que ce est un problème commun avec des formes dynamiques.
<form method='POST'>
<label for="id_airline_for_8">Airline</label>:
<input id="id_airline_for_8" class="arrival_transfer_toggle_8" type="text" maxlength="30" name="airline_for_8"/>
<label for="id_flight_number_for_8">Flight Number</label>:
<input id="id_flight_number_for_8" class="arrival_transfer_toggle_8" type="text" maxlength="30" name="flight_number_for_8"/>
<label for="id_airline_for_17">Airline</label>:
<input id="id_airline_for_17" class="arrival_transfer_toggle_17" type="text" maxlength="30" name="airline_for_17"/>
<label for="id_flight_number_for_17">Flight Number</label>:
<input id="id_flight_number_for_17" class="arrival_transfer_toggle_17" type="text" maxlength="30" name="flight_number_for_17"/>
-- snip --
</form>
EDIT: je devrais mettre à jour que je veux être en mesure d'effectuer une action lorsque l'entrée est cliqué, mais seulement pour les classes avec un id correspondant à la fin.
Pour faire simple, disons que je veux toutes les entrées avec un id correspondant à la fin de la #id à disparaître lorsque l'on clique dessus (juste pour l'amour du arguments).
source d'informationauteur ashchristopher | 2009-01-02
Vous devez vous connecter pour publier un commentaire.
Vous pouvez utiliser
$("input#id_airline_for" + id)
(oùid
est votre numéro, par exemple, 8), mais il sera plus rapide si vous supprimez le nom de la balise et il suffit d'utiliser:Suivantes, vous obtiendrez toutes les entrées qui contiennent
id_airline_for
en leur nom.Si vous avez besoin de le faire par le formulaire de base, vous aurez envie de donner à chacun de former son propre ID et sélectionnez-les en groupes de cette façon.
Je ne pense pas que vous devriez être en utilisant le signe @ et vous êtes absent quelques citations:
Au lieu de cela:
$('input[id^=@id_airline_for_]')
essayez ceci:
$("input[id^='id_airline_for_']")
Voir cela aussi:
http://docs.jquery.com/Selectors/attributeStartsWith#attributevalue
Sélectionne les éléments dont l'attribut spécifié avec une valeur contenant la sous-chaîne donnée
il va sélectionner tous les éléments qui contiennent des "id_airline_for' chaîne de caractères dans l'attribut 'id'