【发布时间】:2012-06-30 12:44:37
【问题描述】:
我有一个简单的表格
<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 中运行得非常好……除了一个例外。某些 IE8 安装它适用于用户名框,但不适用于密码框。有谁知道为什么会这样。我没有看到有关密码框行为差异的任何文档。
更新
我也尝试过 keyup 和 event.which,它们都不起作用。用户名框工作正常,但密码框没有按预期触发。
【问题讨论】:
-
虽然这很奇怪并且听起来像是一个错误,但请尝试将
keydown替换为keyup。等等,什么不起作用...? -
标题是关于
keyup而你的代码使用的是keydown.... ?! -
我已经尝试过 keyup 和 keydown。该代码不起作用,仅适用于密码框。用户名有效,但密码无效。
标签: jquery asp.net internet-explorer