DomElement.click()事件在chrome中不起作用,但其他工作正常

时间:2012-07-20 01:36:28

标签: c# javascript jquery click

我想在按下回车键时提交表格。

C#

<asp:LinkButton ID="LinkButton1"  runat="server" class="login-button" OnClick="btnLogin_Click" >Login</asp:LinkButton>

JS

$(document).on('keydown ', function(event) {
    var key = {
        submit: event.keycode || event.which
    };

    if (key.submit == 13) {

        document.getElementById('LinkButton1').click();

    }
});

然后,我在chrome 18中得到错误。

  

对象javascript:__ doPostBack('LinkBut​​ton1','')没有方法'click'

1 个答案:

答案 0 :(得分:0)

这样做:

$(document).on('keydown', function(e) {
    if (e.which == 13)
        __doPostBack('LinkButton1','');
});

Fiddle

当您在页面中按Enter键时,这将调用分配给登录按钮的onclick处理程序的功能。

您遇到的问题很可能是因为.click().trigger('click')的简写,如果处理程序是在jQuery之外分配的,那么跨浏览器的支持不是很好。

另外,看一些answers,这似乎是最简单的方法。