我在表单上有“提交”事件。在 IE8 中,如果我在不输入任何信息的情况下提交表单,只需单击提交按钮,它就会发布表单,并且不会被 Backbone 中定义的事件捕获或处理。但是,如果我只是点击一个输入字段,然后点击提交,事件就会被处理。
主干事件设置如下:
events: {
'submit #form': 'submitForm',
},
submitForm: function(e){
e.preventDefault();
}
任何想法为什么会这样?
更新:这是一个表格示例:
<div id="form">
<form action="/action" method="post">
<input type="text" name="name" />
<button type="submit" value="Submit"></button>
</form>
</div>
它实际上仅在 IE8 中,并且仅当您在提交之前不先单击表单中的元素时。该事件在 FF、Chrome、IE9+ 中触发没有问题。但仅在 IE8 中,如果您只是单击提交,不执行任何其他操作,则不会触发该事件。