Chrome Form多次提交表单问题的解决方法


Posted in Javascript onMay 09, 2011

今天用chrome提交一个表单时,发现一个奇怪的问题:

//提交表单 
document.frmOrder.action = 'http://www.abc.com/d.aspx'; 
document.frmOrder.method = 'POST'; 
document.frmOrder.target = '_blank'; 
document.frmOrder.submit();

第一次提交可以,第二次提交就没有任何响应了。需要重新加载页面后才可以提交,而这个问题在Firefox,IE下没有出现。
马上Google了一下发现这是webkit内核浏览器的共有特性,这样做是为了防止表单被重复提交。

解决方法也很简单,只需要为 submit 按钮添加 onclick 事件响应,给表单的 action 值添加一个无用的参数,改变表单的响应地址。

具体实现方法:

//提交表单 
document.frmOrder.action = 'http://www.abc.com/d.aspx?r='+Math.random(); 
document.frmOrder.method = 'POST'; 
document.frmOrder.target = '_blank'; 
document.frmOrder.submit();
Javascript 相关文章推荐
js 实现打印网页中定义的部分内容的代码
Apr 01 Javascript
return false;和e.preventDefault();的区别
Jul 11 Javascript
基于jquery的下拉框改变动态添加和删除表格实现代码
Sep 12 Javascript
JQuery动态添加和删除表格行的方法
Mar 09 Javascript
基于JavaScript实现文字超出部分隐藏
Feb 29 Javascript
Bootstrap 3 进度条的实现
Feb 22 Javascript
详解vuex持久化插件解决浏览器刷新数据消失问题
Apr 15 Javascript
node.js的http.createServer过程深入解析
Jun 06 Javascript
微信小程序按钮点击动画效果的实现
Sep 04 Javascript
微信小程序工具函数封装
Oct 28 Javascript
JavaScript实现Excel表格效果
Feb 07 Javascript
jquery实现上传文件进度条
Mar 26 jQuery
JQuery将文本转化成JSON对象需要注意的问题
May 09 #Javascript
通过Jscript中@cc_on 语句识别IE浏览器及版本的代码
May 07 #Javascript
基于JQUERY的两个ListBox子项互相调整的实现代码
May 07 #Javascript
基于jquery的lazy loader插件实现图片的延迟加载[简单使用]
May 07 #Javascript
基于jQuery的倒计时插件代码
May 07 #Javascript
基于Jquery的将DropDownlist的选中值赋给label的实现代码
May 06 #Javascript
jQuery 常见操作实现方式和常用函数方法总结
May 06 #Javascript
You might like
PHP编程最快明白(第一讲 软件环境和准备工作)
2010/10/25 PHP
用PHP写的基于Memcache的Queue实现代码
2011/11/27 PHP
php字符编码转换之gb2312转为utf8
2013/10/28 PHP
PHP获取网页标题的3种实现方法代码实例
2014/04/11 PHP
使用CodeIgniter的类库做图片上传
2014/06/12 PHP
深入剖析PHP中printf()函数格式化使用
2016/05/23 PHP
PHP房贷计算器实例代码,等额本息,等额本金
2017/04/01 PHP
某人初学javascript的时候写的学习笔记
2010/12/30 Javascript
javascript学习笔记(五)正则表达式
2011/04/08 Javascript
不用锚点也可以平滑滚动到页面的指定位置实现代码
2013/05/08 Javascript
用JS做的简单的可折叠的两级树形菜单
2013/09/21 Javascript
用JS在浏览器中创建下载文件
2014/03/05 Javascript
jquery实现简单的瀑布流布局
2016/12/11 Javascript
parabola.js抛物线与加入购物车效果的示例代码
2017/10/25 Javascript
vue中的event bus非父子组件通信解析
2017/10/27 Javascript
vue中组件的过渡动画及实现代码
2018/11/21 Javascript
webpack4 配置 ssr 环境遇到“document is not defined”
2019/10/24 Javascript
VUE UPLOAD 通过ACTION返回上传结果操作
2020/09/07 Javascript
JS removeAttribute()方法实现删除元素的某个属性
2021/01/11 Javascript
在Python中进行自动化单元测试的教程
2015/04/15 Python
Python正则表达式常用函数总结
2017/06/24 Python
利用python获取当前日期前后N天或N月日期的方法示例
2017/07/30 Python
浅谈cv2.imread()和keras.preprocessing中的image.load_img()区别
2020/06/12 Python
Django数据模型中on_delete使用详解
2020/11/30 Python
Python3使用Selenium获取session和token方法详解
2021/02/16 Python
HTML5 的新的表单元素(datalist/keygen/output)使用介绍
2013/07/19 HTML / CSS
干部个人对照检查材料
2014/08/25 职场文书
个人事迹材料怎么写
2014/12/30 职场文书
销售经理岗位职责
2015/01/31 职场文书
2015秋季开学典礼新闻稿
2015/07/17 职场文书
2015团员个人年度总结
2015/11/24 职场文书
2016元旦晚会主持词开场白和结束语
2015/12/04 职场文书
2016廉洁从政心得体会
2016/01/19 职场文书
《詹天佑》教学反思
2016/02/20 职场文书
2016年中学植树节活动总结
2016/03/16 职场文书
元素水平垂直居中的方式
2021/03/31 HTML / CSS