我有一个表,其中包含一个包含关键字的列和一个选择字段(css class .filter),其中包含与这些关键字对应的选项和值。
在将select字段更改为其他选项之前,它可以正常工作。使用以下代码,一切都显然是隐藏的。但是在隐藏之前为每一行添加一个.show()不起作用(任何东西都不会被隐藏)。隐藏后显示选定的行也不起作用。
$(".filter").change(function () {
if ($(this).val() != "all") {
$("tbody").find("tr:not(:contains('"+$(this).val()+"'))").hide(); //hide everything except what contains the selected option
} else {
$("tbody").find("tr:hidden").show(); // reset the filter and show everything
}
});
答案 0 :(得分:1)
您可以隐藏所有行,然后只显示已过滤的项目
$("tbody").find("tr").hide().filter(":contains('" + $(this).val() + "')").show();