2

我正在调用.keyup搜索文本框的功能,并且keyup()正在从数据库中刷新 GRID。

问题:

但是网格正在刷新(也有特殊键)箭头键、数字锁、功能键和所有其他键,并且不需要刷新这些键。除了退格、返回、制表符、空格、删除。

我想构造一个正则表达式,以便过滤掉所有控制键。

示例代码:

$('#searchContent').keyup(function (e) {
    var key = e.which;
    if ( /*condition*/ ) {
        return;
    }
    //my code goes here...
}

我做了什么:

彻底搜索网络,我想出了hotkey,但这并没有解决我的目的。那么,有什么智能正则表达式吗?

4

2 回答 2

0

试试这个 HTML 看看哪些代码与哪些键匹配(取自Mozilla):

<html>
<head>
    <title>charCode example</title>

    <script type="text/javascript">

        function showChar(e)
        {
            alert("Key Pressed: " + String.fromCharCode(e.charCode) + "\n"
                  + "charCode: " + e.charCode);
        }

        </script>
    </head>

    <body onkeypress="showChar(event);">
        <p>Press any 'character' type key.</p>
    </body>
</html>
于 2013-03-22T11:34:34.597 回答
0

试试这个技巧:

function checkForChanges(){
   var txt = $('#searchContent');
   if(txt.val() != txt.attr('xvalue') {
      //do referesh grid content here
   }
}

$('#searchContent').keyup(function (e) {
    $(this).attr('xvalue') = this.value;    
    clearTimeout(this.changeTimer);    
    this.changeTimer = setTimeout(checkForChanges, 20);
}
于 2013-03-22T15:01:14.527 回答