最近我偶然发现了浏览器之间的另一个不一致 在Chrome上,在禁用提交按钮的表单中,按Enter(在文本输入中)将触发提交。我创建了这个简单的页面作为示例:http://jsfiddle.net/andreitudor/s6EDX/1/
<form id="test" onSubmit="testForm()" >
<input type="text">
<input type="submit" disabled="disabled" >
</form>
这也发生在IE9上(并不重要),但它并没有发生在Firefox和Opera上。
我认为这是Chrome中的一个错误,但我可能错了。这种行为可能非常令人沮丧。假设我们在提交之前有一个我们想要验证的输入(例如电子邮件地址)。作为此问题的解决方法,我们必须将验证逻辑移至onSubmit函数。
那么,这是一个错误吗?我们怎样才能以简单而优雅的方式超越这个?也许jQuery有一个解决方案吗?!