2017-02-15 45 views
0

这是我的表滤波器KEYUP功能筛选表行单击

var $rows=$('#roleListTable tr'); 
     $('#searchroleName').keyup(function() { 
     var val = $.trim($(this).val()).replace(/ +/g, ' ').toLowerCase(); 
     $rows.show().filter(function() { 
     var text = $(this).text().replace(/\s+/g, ' ').toLowerCase(); 
     return !~text.indexOf(val); 
    }).hide(); 
}); 

我想按钮相同功能,点击

var $rows=$('#roleListTable tr'); 
     $('#searchGo').click(function() { 
     var val = $.trim($('#searchroleName').val()).replace(/ +/g, ' ').toLowerCase(); 
     $rows.show().filter(function() { 
     var text = $('#searchroleName').text().replace(/\s+/g, ' ').toLowerCase(); 
     return !~text.indexOf(val); 
    }).hide(); 
}); 

我做错了的是什么?和当有人点击cancel按钮应该显示完整的表格时,可以有人提出想法。

https://jsfiddle.net/hzrd8b8t/

回答

0
var text = $(this).text().replace(/\s+/g, ' ').toLowerCase(); 
$(this) != $('#searchroleName'); 
$(this) == $rows; 

所以只保留$(本)在该行代码。 您可以使用console.log()来验证它。

+0

无需拆卸KEYUP功能如何它可能的 – user7566666

+0

为什么你需要他们两个而2个功能做同样的事情? – Rio

+0

我不想要键控功能。我只想要按钮点击功能。 – user7566666

0

你必须点击取消按钮后显示行... 只要改变

$(".searchClear").click(function(){ 
     $('#searchroleName').val(""); 
     }); 

TO

$(".searchClear").click(function(){ 
    $('#searchroleName').val(""); 
    $('#roleListTable tr').show(); 
}); 

请参阅更新的小提琴here

+0

谢谢。帮我做'go'button过滤器点击 – user7566666

+0

你在关键帧上做了什么就足够了..在按钮上点击“Go”应用相同的逻辑.. Enjoye – nrsharma