2016-08-08 144 views
-1

我有一个非常简单的jQ函数,但我不能将“行”分配给“tablerow”var。将对象分配给每个var

我不知道为什么:(

$(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);  
    } 
}); 

的tablerow的是在每一次“空”。第一个控制台显示我正确的表行,但在行的第二个9个日志“空”了。

为什么?


工作结果

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

'talberow'≠'tablerow' – Biffen

+0

好的,我们发现你的问题。但是你真的想在那里做什么?代码真的有线... – eisbehr

+0

添加到我的问题;-) – Phil795

回答

1

它是tablerow而不是talberow。你可以直接使用带选择器的each

$(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);  
    } 
});