在firefox中输入按键问题

时间:2012-05-08 11:23:19

标签: javascript asp.net enter

在表单中,我们有一个文本框和一个链接按钮。在此文本上输入按键时,必须触发链接按钮单击。

我添加了这样的js代码。

JS:

$(".SearchClass").keyup(function(event) {
        if (event.keyCode == 13) {
            eval($('.SearchButtonClass').attr('href'));
        }
    });

ASPX:

<asp:LinkButton ID="lnkBtnSearch" runat="server" OnClick="lnkBtnSearch_Click" CssClass="SearchButtonClass"></asp:LinkButton>
<asp:TextBox ID="txtSearch" CssClass="SearchClass" runat="server"></asp:TextBox>

这在IE中按预期工作,但在Firefox中无效。在firefox on按钮上单击它只是重新加载页面。

编辑:在使用firebug脚本调试器进行调试时,在输入键按下时,它不会进入键盘功能

1 个答案:

答案 0 :(得分:0)

在FireFox中,输入按键触发表单提交。你需要防止这种情况 - 例如:

$($(".SearchClass").get(0).form).submit(function(evt) {
  evt.preventDefault();
});

但是,如果您有其他方式提交表单(如提交按钮),那么您还必须以编程方式从这些元素提交表单,因为此代码将阻止所有其他表单提交方法。

另外,对于您的链接点击事件,只需尝试以下内容:

$(".SearchClass").keyup(function(event) {
    if (event.keyCode == 13) {
        location.href = $('.SearchButtonClass').attr('href');
    }
});