我试图使用Jquery为HTML表构建一个选择过滤器,我想只过滤该表的第一列,到目前为止我已经有了这个功能:
$('#select').change(function() {
var rows = $("#tablebody_hosts").find("tr").hide();
var data = this.value.split(" ");
$.each(data, function(i, v) {
rows.filter(":contains(" + v + ")").show();
})
});
如何才能在表的第一列中搜索数据?
答案 0 :(得分:3)
试试这个:
rows.filter(function () {
return $(this).children(':eq(0)').text().indexOf(v) !== -1;
}).show();
而不是:
rows.filter(":contains(" + v + ")").show();
答案 1 :(得分:0)
$.each(data, function(i, v) {
rows.filter(function(){
return (data.indexOf($.trim($(this).children('td').first().text())) != -1);
}).show();
});
答案 2 :(得分:0)
您不需要遍历行,只需尝试此操作,
rows.filter(function(){
return (data.indexOf($.trim($(this).children('td').first().text())) != -1);
}).show();
或者
rows.filter(function(){
return $.inArray($.trim($(this).children('td').first().text()),data);
}).show();