2009-07-29 7 views
0

désolé si cela est assez vague.im content de fournir des informations supplémentaires en cas de besoin. Je travaille sur une page Web qui utilise la fonction jquery change() pour effectuer des mises à jour sur la page en ce qui concerne la saisie par les utilisateurs, par exemple changer la couleur d'une div en fonction de ce que l'utilisateur entre. de la classe "formitems". Chaque fois que quelque chose de cette classe change, il déclenche la mise à jour de la page.Obtenir un identifiant pour un élément de formulaire après que sa classe a déclenché une fonction de changement de jquery

Cependant, je voudrais montrer une icône de chargement à côté de l'élément de formulaire spécifique que l'utilisateur a changé. Je sais que je pourrais définir une fonction de changement différente pour chaque membre "formitem" mais cela serait trop inefficace. façon de déterminer l'identifiant de quel membre "formitem" a déclenché le changement? En termes simples, je sais quelle classe l'a fait, j'ai juste besoin de savoir quel membre de la classe a fait.

Comme je l'ai dit je me rends compte que cela peut être vague, donc je suis heureux de répondre à vos questions.

+0

pouvez-vous poster du code? votre jquery et votre html? – Jason

+0

désolé les codes dans work.wont être devant lui jusqu'à demain: -/ – kyassuru

Répondre

2

Dans le contexte de la fonction de rappel de changement, « this » est l'élément qui a déclenché l'événement:

$('.formitems').change(function(){ 
    var id = $(this).attr('id'); // or simply this.id; 
}); 

Cocher cette example.

+0

Juste essayé ceci, cela a fonctionné parfaitement. Merci beaucoup – kyassuru

0

Impossible car les événements de modification n'émettent pas de bulles. Vous ne pouvez donc pas utiliser la délégation d'événements. Il vous reste donc à attacher des événements de changement individuels pour chaque élément.

Questions connexes