AJAX提交与FORM提交的区别说明
1.隐藏form提交,更新数据完成后,需要转到一个空白页面再对原页面进行提交后处理;ajax则不用,可以直接返回原页面进行提交后的处理。可见ajax可以比隐藏form提交少增加一个页面。
2.ajax出于安全性考虑,不能对文件进行操作,所以就不能通过ajax来实现文件上传,而通过隐藏form提交则可以实现这个功能,所以这就是目前用隐藏form提交的主要用途。
现在接下来讲述如何通过隐藏form来实现文件上传
1)首先定义一个用于填写表单内容的form
<formname="form1"></form>
2)接着定义一个用于提交的form
<formname="form2"target="myIframe"> //用于指定提交返回的页面显示在这个隐藏的iframe中
<iframename="myIframe"style="display:none"></iframe> //用于存放提交返回后的空白页面
<divid="formInner"style="display:none"></div> //用于获取form1的html内容,获得form1的表单元素
</form>
3)在form1提交时,进行如下javascript处理
varformInner=document.getElementById("formInner");
formInner.innerHTML=form1.innerHTML; //复制form1的html代码
form2.action=form1.action;
form2.submit();
4)提交后,进入后台处理,后台处理完成后,需要返回一个空白页面blank.jsp,这个页面是在隐藏的iframe中生成的,所以可以通过parent对象对原页面进行操作。
比如原页面定义了一个updatePageFromSubmit(),则在blank.jsp页面中可以通过parent.updatePageFromSubmit()来调用进行提交返回后的处理
相关文章
- ajax跨域解除方案,关于Ajax跨域问题及解决方案详析「建议收藏」
- ajax跨域解决方案domain_js解决跨域问题
- Ajax-hook拦截全局ajax请求操作
- 什么是Ajax以及ajax请求的步骤[通俗易懂]
- Ajax请求的五个步骤[通俗易懂]
- JAVA—— AJAX[通俗易懂]
- Ajax教程_ajax是服务器端动态网页技术
- Ajax简介
- jQuery $.ajax()方法的使用
- Ajax技术实现MySQL数据查询与更新(ajax连接mysql)
- Ajax调用MySQL给网站带来快捷体验(ajax调用mysql)
- Ajax无缝接入MySQL数据库(ajax请求mysql)
- 数据通过Ajax加载MySQL数据(ajax获取mysql)
- Ajax快速查询MySQL数据库(ajax查询mysql)
- 使用Ajax实现MySQL数据库操作(ajax操作mysql)
- MySQL与Ajax的联动大大提高网站数据交互的效率(ajax和mysql连用)
- 探究Ajax的MySQL驱动原理(ajax原理 mysql)
- Ajax与MySQL实现高效率数据加载(ajax mysql加载)
- 使用Ajax与Oracle实现极致可靠性开发(ajax oracle)
- 异步Ajax与Oracle数据库实现无缝连接(ajax连接oracle)
- Ajax核心XMLHTTP组件资料
- 简单示例AJAX结合PHP代码实现登录效果代码
- Ajax.net显示错误信息的设置
- Dom在ajax技术中的作用说明
- jsp+ajax实现无刷新(鼠标离开文本框即验证用户名)实现思路
- Ajax提交与传统表单提交的区别说明
- 实例解读Ajax与servlet交互的方法