2016-08-08 10 views
-1

Ich habe eine sehr einfache jQ-Funktion, aber ich kann nicht die "Zeile" zu der "Tablerow" var zuweisen.Object zu var in jedem

Ich weiß nicht, warum :(

$(document).on('click', '.btn-remove-entry', function() { 
    var tablerow = null; 
    $.each($('.filter'), function(idx, row) { 
     if($(row).hasClass('info')) { 
      talberow = $(row); 
      console.log(talberow); 
     } 
    }); 
    console.log(tablerow); 
    if(tablerow != null) { 
     $('.filter-list tr').remove(tablerow);  
    } 
}); 

Die TableRow zu jeder Zeit wird ‚null‘. Die erste Konsole mir die richtige Tabellenzeile zeigt. Aber der Zweite in Zeile 9 logs ‚null‘ wieder.

Warum?


Das Arbeitsergebnis

$(document).on('click', '.btn-remove-entry', function() { 
    $.each($('.filter'), function(idx, row) { 
     if($(row).hasClass('info')) { 
      $(row).remove(); 
     } 
    }); 
}); 
+1

'talberow' ≠' tablerow' – Biffen

+0

Okay, wir haben das Problem Ihrer Frage gefunden. Aber was willst du wirklich dort machen? Der Code ist wirklich verkabelt ... – eisbehr

+0

Zu meiner Frage hinzugefügt ;-) – Phil795

Antwort

1

Es ist tablerow nicht talberow. Und Sie können die each mit dem Selektor direkt verwenden.

$(document).on('click', '.btn-remove-entry', function() { 
    var tablerow = null; 

    $('.filter').each(function() { 
     if($(this).hasClass('info')) { 
      tablerow = $(this); 
     } 
    }); 

    if(tablerow != null) { 
     $('.filter-list tr').remove(tablerow);  
    } 
}); 
Verwandte Themen