Sélection jQuery avec des identifiants dynamics

J’ai un formulaire qui est généré dynamicment et a généré dynamicment les identifiants (et potentiellement les classes). Les formes sont les mêmes mais leur identifiant associé est ajouté jusqu’au bout.

Comment puis-je sélectionner chaque ensemble d’entrées et appliquer un code à chacune d’entre elles?

J’essayais avec $ (‘input [id ^ = @ id_airline_for_]’) mais je ne pouvais pas le faire voler. Je soupçonne de ne pas connaître certaines connaissances fondamentales de jQuery qui me retiennent, car je suis sûr que le problème est courant avec les formulaires dynamics.

: : : : -- snip --

EDIT: Je devrais mettre à jour le fait que je veux pouvoir effectuer certaines actions lorsque l’utilisateur clique sur l’entrée, mais uniquement pour les classes dont l’identifiant correspond à la fin.

Pour simplifier les choses, disons que je veux que toutes les entrées ayant un identifiant correspondant à la fin de #id disparaissent lorsqu’on clique sur l’une (pour des raisons d’argumentation).

 $("input[id^='id_airline_for_']").each(function() { var id = parseInt(this.id.replace("id_airline_for_", ""), 10); var airline = $("#id_airline_for_" + id); var flightNumber = $("#id_flight_number_for_" + id); // do stuff with airline and flightNumber s }); 

Vous pouvez utiliser $("input#id_airline_for" + id) ( id étant votre numéro, par exemple 8), mais ce sera plus rapide si vous supprimez le nom de la balise et utilisez simplement:

 $("#id_airline_for" + id); 

Ce qui suit vous donnera toutes les entrées qui contiennent id_airline_for dans leur nom.

 $("input[id^='id_airline_for']") 

Si vous devez le faire formulaire par formulaire, vous devrez atsortingbuer à chaque formulaire son propre identifiant et le sélectionner dans des groupes de cette manière.

 $("#formJetBlue input[id^='id_airline_for']") $("#formNwa input[id^='id_airline_for']") $("#formOceanic input[id^='id_airline_for']") 

Je ne pense pas que vous devriez utiliser le signe @ et vous manquez quelques citations:

Au lieu de ceci: $ (‘input [id ^ = @ id_airline_for_]’)

essayez ceci: $ (“input [id ^ = ‘id_airline_for_’]”)

Voir aussi

http://docs.jquery.com/Selectors/atsortingbuteStartsWith#atsortingbutevalue

Sélectionne les éléments ayant l’atsortingbut spécifié avec une valeur contenant la sous-chaîne donnée

 $('input[id *= id_airline_for]').attr('checked', headerChecked); 

il sélectionnera tous les éléments contenant la chaîne ‘id_airline_for’ dans l’atsortingbut ‘id’