シンプルな形です
<asp:TextBox ID="txtUsername" runat="server" CssClass="watermarkOn" TabIndex="1" />
<asp:TextBox ID="txtPassword" runat="server" TextMode="Password" CssClass="watermarkOn" TabIndex="2" />
<asp:LinkButton ID="btnLogin" runat="server" CssClass="imgbtn_login" TabIndex="3" Text="login" onclick="btnLogin_Click" CausesValidation="false" />
次のjQueryを使用
$(document).ready(function () {
$("#<%=txtUsername.ClientID %>").keydown(function (event) {
if (event.keyCode == 13) {
eval($("#<%=btnLogin.ClientID %>").attr('href'));
}
});
$("#<%=txtPassword.ClientID %>").keydown(function (event) {
if (event.keyCode == 13)
{
eval($("#<%=btnLogin.ClientID %>").attr('href'));
}
});
});
これは、FF、IE7、IE 9、Chrome、Safariで完全に正常に機能します。ただし、1つの例外があります。特定のIE8インストールでは、ユーザー名ボックスでは機能しますが、パスワードボックスでは機能しません。なぜこれが当てはまるのか誰かが知っていますか?パスワードボックスの動作の違いに関するドキュメントはありません。
アップデート
keyupとevent.whichも試しましたが、どちらも機能しません。ユーザー名ボックスは正常に機能しますが、パスワードボックスは正常にトリガーされません。