1

エンターキーを押してフォームを送信したいのですが。

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();

    }
});

次に、chrome18でエラーが発生します。

オブジェクトjavascript:__ doPostBack('LinkBut​​ton1'、'')にはメソッド'click'がありません

4

1 に答える 1

0

これはそれを行います:

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

フィドル

onclickこれにより、ページでEnterキーを押すと、ログインボタンのハンドラーに割り当てられている関数が呼び出されます。

ハンドラーがjQueryの外部に割り当てられている場合、あなたが直面している問題は、クロスブラウザーで十分にサポートさ.click()れていない省略形である可能性があります。.trigger('click')

また、いくつかの答えを見ると、これがこれを行う最も簡単な方法のようです。

于 2012-07-20T01:55:25.790 に答える