您的位置:首页 > 其它

日常开发bug修复——火狐浏览器提交表单时表单执行两次

2016-06-08 18:31 686 查看
今天测试的导入数据的时候发现提交文件时,数据库居然执行了两次插入操作。看一下后台原来是控制器(项目用的是springmvc)被执行了两次。我就纳闷了为什么会有如此诡异的事情发生。多次测试无果决定换浏览器试试。结果IE上却没有再次出现这个bug(原来用的火狐浏览器)。经过查找资料得知,原来是在firefox下,form对象(jQuery对象).submit(),特别是写在a标签里面的会提交两次,如这样写
<pre name="code" class="html"><a href="#" class="btn-blue" onclick="$('#formUpload').submit();">


于是乎决定将form表单的onsubmit里面的表单验证删掉,在用submit按钮去提交并用事件去执行表单验证。

a标签改为submit按钮

<input class="btn-grid" value="导入" type="submit" onclick="uploadCheck();"/>然后在uploadCheck方法里面写上document.getElementById("formUpload").submit();(这次用js对象)
就这样解决这个bug,我相信也会有人遇到同样的问题吧。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息