当前位置: 首页 > 图文教程 > 网络编程 > Javascript > 用Javascript同时提交多个Web表单的方法

Javascript
javascript 多图浏览超炫效果
对采用动态原型方式无法展示继承机制得思考
JS 控制非法字符的输入代码
JSON 编辑器实现代码
jquery select操作的日期联动实现代码
select列表内容交换的js实现代码
javascript Demo模态窗口
JavaScript 加号(+)运算符号
javascript 动态生成私有变量访问器
javascript 模拟JQuery的Ready方法实现并出现的问题
jquery ready函数源代码研究
ASP Json Parser修正版
js select多选列表传值代码
JavaScript 对象模型 执行模型
js 操作select相关方法函数
IE和firefox浏览器的event事件兼容性汇总
js event事件的传递与冒泡处理
兼容IE,firefox的获取节点的文本值的javascript代码
IE7中javascript操作CheckBox的checked=true不打勾的解决方法
javascript Array.sort() 跨浏览器下需要考虑的问题

用Javascript同时提交多个Web表单的方法


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2010-01-10   浏览: 95 ::
收藏到网摘: n/a

使用Javascript同时提交多个Web表单的方法 1问题来自一位网友的提问:
web页面里有多个表单,每个表单对应着某一类数据操作。
比如一个详细的简历信息页面分
1、个人资料
2、工作经验
3、项目经验
4、其他信息 4个表单。
一般的需求是允许用户单独提交其中任何一个表单到下一个页面进行修改操作(也就是说页面有4个不同的修改按钮,点击哪个按钮则只提交某一个表单的数据到服务器,并根据表单的action)。
现在有这样的需求,允许用户选择其中任意的一个或多个表单进行提交修改,这样的话在客户端如何提交表单?
声明:可能会有人说将4个表单合成一个大表单,根据修改按钮的不同在服务器端进行不同的数据操作即可。这是一种解决办法,但考虑到页面数据量比较大,为了提高效率,减少数据传输量,还是希望能够分成多个表单提交,所以这个办法暂不考虑。是不是一定要用js或ajax?如果不用呢?
2 个人观点
1 用Ajax提交,比如prototype
new Ajax.Request("/do1",{parameters:$("form1").serialize().......);
new Ajax.Request("/do2",{parameters:$("form2").serialize().......);
你可以同时调用多个,默认是异步提交,所以可以同时提交多个表单,这个方案是最简单的。
2 使用多个iframe,然后将每个表单的target指向不同的iframe
然后用js的
document.getElementById("form1").submit();
document.getElementById("form2").submit();
。。。
这个样子进行提交。

3 两个方法的对比
Ajax方便简单,对结果的处理也比较省事,框架都替我们做好了,但不能跨域提交
iframe最符合一般的使用,也可以跨域提交,处理返回结果稍微麻烦些,需要在iframe里面使用 parent.进行调用才可以。