0

我认为如果我们click在提交按钮上设置事件处理程序,它不如submit在表单上设置事件更可取。

但我发现我们可以做到

http://jsfiddle.net/MtLca/6/

document.getElementById('the-button').onclick = function (evt) {
    alert("That's good I am clicked...");
}

使用 HTML:

<form method="get">
    <input type="text" name="someVar">
    <input id="the-button" type="submit">
</form>

当用户在文本输入字段上按 Enter 时,提交按钮将收到一个click事件。它适用于 Chrome、Firefox 和 Safari,当在 IE 6 上尝试时,它不会触发事件。所以它似乎是一个浏览器实现,每当提交表单时,(第一个)提交按钮将click在表单获得事件之前获得一个submit事件(参见http://jsfiddle.net/MtLca/12/)。有人知道浏览器的历史和演变,知道上面发生的细节吗?

4

1 回答 1

0

我不知道这是否仍然是这种情况,但在 IE6 中有一个文本字段的表单导致输入不提交表单。尝试添加一个额外的输入,然后看看它是否有效。

于 2013-03-21T23:37:11.030 回答