如何确定在javascript中调用的事件

时间:2011-02-14 02:27:35

标签: javascript jquery

我正在使用ASP.NET,但在某个页面上我使用常规的html文本框,因为请求是使用AJAX完成的,而不是传统的整页回发。我的问题是当用户填写最后一个文本框并按下输入时,文本框失去焦点,页面一直滚动到底部。

我尝试使用onblur事件,但它不起作用,所以我想知道当按下回车键时(或任何关键字段)实际调用了什么事件。

我试过了:

$("#loginPass").blur(function (e) {
            if (e.keyCode == 13) 
                $("#DealerLogin").click();
        });

我有Firefox的firebug,但无法弄清楚如何查看js相关操作正在触发。

3 个答案:

答案 0 :(得分:5)

在Firebug脚本面板中,您可以单击暂停按钮:

Pause btn in Firebug

在您按Enter键之前尝试一下,然后单步执行代码。

答案 1 :(得分:4)

我不会称自己为javascript专家,但我会尝试这样做。

当我遇到困难,并且不知道我的方法是否或何时被调用时,我会回到使用可靠的旧“警报”(在方法1中);“调试我的代码的技术。

$(document).ready(function(){ 
    alert("In document.ready()"); 

    $("#loginPass").blur(function(e) 
    { 
        alert("In loginPass.blur() with keycode = " + e.keyCode); 
    }); 

    $("#loginPass").keydown(function(e) 
    { 
        alert("In loginPass.keydown() with keycode = " + e.keyCode); 
    }); 
}); 

这当然不是一种优雅的技术,但往往是揭示。如果您发现没有任何方法被调用,我想确保您的文本框ID正确匹配“loginPass”。

答案 2 :(得分:0)

  

我的问题是当用户填写时   在最后一个文本框中按下   进入文本框失去焦点和   页面一直滚动到   底部。

嗯。这绝对不是浏览器的默认行为。你需要知道,这是什么,只是抓住这个事件或部分代码。