10
votes

jquery-obtenir l'identifiant du plus proche div?

Bonjour, j'ai une table avec la liste du véhicule

   $(".isActive").click(function() {
     var checkBox_id = $(this).attr("id");
     var checkbox = $('#'+checkBox_id);
     var div_id =$('#'+checkBox_id).closest("div").find(".display_image").attr("id"); // always returns div_id =display_image_0(div id of first row)


1 commentaires

essayé quelque chose comme $ ('tr div.display_image'). Chacun (fonction () {$ (this) .attr ('id')})?


5 Réponses :


18
votes

montez jusqu'à ce que vous trouviez la ligne, puis descendez à nouveau pour trouver l'image d'affichage:

$('.isActive').click(function() {
    var div_id = $(this).closest('tr').find('.display_image').attr('id');
    // ...
});


0 commentaires

0
votes

placard code> ne fonctionnera pas ici..Aussi tant que je sais que le placard fonctionne pour le parent Heirarachy.

Essayez celui-ci p>

var div_id =$('#'+checkBox_id).parents(".check_box_div").find(".display_image").attr("id"); 


0 commentaires

1
votes

Essayez ceci.

 $(".isActive").click(function() {
 var div_id = $(this).parents(".check_box_list").next(".display_image").attr("id");
 }


0 commentaires

0
votes

Utilisez xxx

jsfiddle: http://jsfiddle.net/5tv9a / 8 /


1 commentaires

Yup - Répondez d'abord, violon plus tard ... ;-)



0
votes

Vous pouvez stocker toutes les informations dans un tableau et les gérer après la boucle.

$(".isActive").click(function() {
     var checkBox_id = $(this).attr("id");
     var checkbox = $('#'+checkBox_id);
     var div_array = new Array();
     $('.display_image').each(function(index) {
              var div_array[index] = //whatever you want;
      });
     // Now in div_array you have stored all the information you want (the id as well)


0 commentaires