如果Td的值不匹配,则删除整个Tr-Javascript

时间:2018-08-09 10:11:02

标签: javascript jquery html

我有一张要过滤的数据表。该过滤器基于两个因素。具有相应列和文本输入的ddl。当td的值与搜索条件不匹配时,有什么办法可以隐藏整个tr,按原样现在只删除td。

$("#search").on("keyup", function() {
    var value = $(this).val().toLowerCase();
    var row = document.getElementById('row');

    var x = document.getElementById('DDL_SearchType');
    var type =  x.options[x.selectedIndex].text;    
    $('#print_Table tr td[class =' +type+']').filter(function() {
      $(this).toggle($(this).text().toLowerCase().indexOf(value) > -1)
    });
  });

1 个答案:

答案 0 :(得分:1)

  

目前,仅删除了td。

那是因为您在致电时只针对迭代的td

$(this).toggle($(this).text().toLowerCase().indexOf(value) > -1)

您需要做的是通过调用tr来定位$(this).parent(),因此您的代码将是:

$('#print_Table tr td[class =' +type+']').filter(function() {
  $(this).parent().toggle($(this).text().toLowerCase().indexOf(value) > -1)
});