输入触发表单提交

时间:2010-08-12 09:59:39

标签: javascript jquery

我有一个div(好的gif,如果它是一个按钮),在该div上是一段javascript,它处理ENTER,如果它是一个点击($(this).click())。点击有自己的作用。

在FireFox中,一切都运行良好:用户按下按钮上的输入并触发点击。 在IE中,表单不是click()

HELP !!

2 个答案:

答案 0 :(得分:3)

这是一个方便的花花公子jQuery函数,我用它来解决这个问题。

$(formSelector).find('input, select').keypress(function (event) {

    if (event.keyCode == 13) {
        event.preventDefault();
        $(buttonSelector).click().focus();

        return false;
    }
});

formselector只是一个包含'#FormId'的变量,而buttonSelector是一个包含我想点击的按钮的变量。所以在你的情况下,它将是:'#IdOfYourDivToClick'。

答案 1 :(得分:0)

在IE中,输入元素(按钮类型)上的回车键的默认行为是表单提交(大部分时间)。

您可以尝试捕获keydown事件并检查enter键;如果是,则运行event.preventDefault()

看看: https://developer.mozilla.org/en/DOM/event.preventDefault

如果您发布了一些代码,我可以通过修改您的代码来帮助您。发布您的HTML和相关的JavaScript。