返回列表 發帖

請問onKeyDown的動作

原本我在jquery是用下面selector抓到button click的動作,
$(':button[name= filterButton]').click(function(){}) 
後來為了按下Enter也可以執行同一支script 就在外圈加了function name()
不過這樣就不能寫在$(document).ready(function(){}裡面了
請問javascript, jquery要如何抓到 Enter鍵的動作 或是在html裡可以叫onKeyDown做和button click一樣的動作嗎?

我的html
<input type="button" name="filterButton" value="篩選" onclick="doFilter()" />
<input type="text" name="no" class="uppercase" size="15" maxlength="2" onKeyDown="if (event.keyCode==13) { doFilter(); }"/>

我的做法是:取得整個網頁偵測事件
        
$(function(){
$(document).keyup(function(evnet) {

            if (evnet.keyCode == '13') {
               //do something...

                }             
           }             
        })
})
        

TOP

回復 1# eaitng

因為 function 定義在 $(function() {}); 內的話,外部就看不到了,可以把你的 function 改為 global 的,有以下兩種方式:
1. function 定義在 $(function() {}) 外面
function doFilter() {

}
$(function () {
  //jquery...
});
2. 定義在內部,但是用 global 變數
$(function () {
  doFilter = function () { //這一行不加 var 就是 global 了
    //...
  };

});
To infinity and beyond!

TOP

太感激二位了  

TOP

返回列表 回復 發帖