我知道,如果我们有<form>一个<input>带或不带按钮的submit按钮,按下Enter键将提交该封闭表单。但是,即使没有<form>标签,IE 也会提交(特别是单击它遇到的第一个按钮)。
<!DOCTYPE html>
<html>
<head>
<title></title>
</head>
<body>
<button onclick="alert('button 1 clicked')">button 1</button>
<button onclick="alert('button 2 clicked')">button 2</button>
<input type="text" />
</body>
</html>
高于Plunkr中的标记。
当Enter在input字段中按下 ' ' 时,将看到' button 1 clicked ' 警报。
<input>如果我用标签包围<form>,它不会提交。
在 IE9 和 IE 10 中也观察到了这种行为(尚未测试其他版本)。这是 IE 中的错误,或者如果不是,如何阻止这种情况发生?
更新:如果我添加,type="button"则不会观察到上述行为。<button>标签的默认行为是submit吗?而且,只有 IE 的行为是这样的?