我有一个包含我希望过滤的数据的表格。过滤器基于两个因素。具有相应列和文本输入的 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)
});
});
最佳答案
As for now only the td is removed.
那是因为当您调用时,您只针对迭代的 td
:
$(this).toggle($(this).text().toLowerCase().indexOf(value) > -1)
您需要做的是通过调用 $(this).parent()
来定位 tr
,因此您的代码将是:
$('#print_Table tr td[class =' +type+']').filter(function() {
$(this).parent().toggle($(this).text().toLowerCase().indexOf(value) > -1)
});
关于javascript - 如果 Td 值不匹配,则删除整个 Tr - Javascript,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51764311/