2010-02-05 2 views
0

Je vais utiliser le texte de l'exemple jquery, Par exemple, considérons le code HTML:conclusion cliquée id profondément dans le document en utilisant jquery

<lots of divs to get to here> 

<div id="#targetid_0"> 
    Click here 
</div> 
<div id="#targetid_1"> 
    Trigger the handler 
</div> 

J'ai une série de questions qui me tourmentent .. .

en supposant que je clique sur « Cliquez ici » ou « Déclencher le gestionnaire »:

  1. Si j'assignant une valeur via le attr (targetid_x, JSON.ID), comment puis-je utiliser alerte pour me montrer cette valeur? Ça me rend fou!
  2. Comment puis-je connaître le #tag spécifique cliqué? (en quelque sorte lié à la question 1).

Je voudrais voir si cela peut être accompli avec la délégation d'événement ou au moins sans classes.

Halp!

+0

Votre exemple HTML a-t-il été avalé lorsque vous l'avez posté? –

+0

Je ne comprends pas votre question du tout. – Catfish

+0

Non, c'est html. J'ai besoin d'aide pour essayer de comprendre les commandes de jquery pour extraire les identifiants spécifiques et leur attr d'un événement click. –

Répondre

0
$('div').click(function() { 
    $(this).attr('id'); 
}); 
+0

donc, devrait alerter ($ (this) .attr ('id')); mettre quelque chose dans une boîte d'alerte? Parce que non. ('Section1 ').: Voilà ma fonction de $ cliquez sur (function (event) { \t var tmp = $ (this) .attr (' id'); \t alerte (tmp); \t}) Je l'ai même essayé comme alerte ($ (this) .attr ('id')); <= boîte d'alerte vide. –

+0

Je ne suis pas un expert en jquery, mais je ne pense pas que vous ayez besoin de "l'événement" dans votre fonction. Essayez de le prendre. Essayez également de mettre quelque chose comme "test" dans la boîte d'alerte juste pour s'assurer que cela fonctionne. – Catfish

+0

Oh aussi, lors de la déclaration des variables, j'ai eu des problèmes avec ça. Essayez de faire var tmp = ($ (this).attr ('id')); – Catfish

0

Essayez ceci:

$('div[id]').click(function(){ 
    alert(this.id); 
    return false; 
}); 

Cela ajoute un écouteur d'événement à tous les divs qui ont une carte d'identité.
La partie return false; arrête la propagation. Ainsi, si vous avez des divs imbriqués qui ont des identifiants, seul le bas (interne) affichera l'alerte, puis arrêtera l'événement.

+0

lolz, viens de remarquer que c'est une question d'un an :)) Je ne sais pas comment je suis arrivé :)) –

Questions connexes