过滤表+虚拟键盘

时间:2015-08-03 05:18:43

标签: javascript jquery html keyboard

我有一个带有jquery表过滤器的页面,它可以使用常规键盘,但不能使用虚拟键盘。

检查JSFiddle以查看我的意思,下面是过滤函数的代码。

https://jsfiddle.net/e3r76kdc/5/

$("#search").keyup(function(){
    _this = this;
    // Show only matching TR, hide rest of them
    $.each($("#table tbody").find("tr"), function() {
        console.log($(this).text());
        if($(this).text().toLowerCase().indexOf($(_this).val().toLowerCase()) == -1)
           $(this).hide();
        else
             $(this).show();                
    });
});

如果您在常规键盘上键入数字,它会过滤表格,但如果您使用虚拟键盘,则会显示数字,但过滤器不起作用。

我敢打赌,这很简单,但我无法解决它。

谢谢!

1 个答案:

答案 0 :(得分:1)

问题是虚拟键盘不会触发keyup事件。我检查了源,但确实触发了对输入的关注。

因此你可以做到:

$("#search").on('keyup focus', function() { ...

https://jsfiddle.net/e3r76kdc/6/