一种Ajax上传文件的系统及方法

文档序号:7987563阅读:246来源:国知局
一种Ajax上传文件的系统及方法
【专利摘要】本发明公开了一种Ajax上传文件的系统及方法,包括如下步骤:1、由系统判断是否上传文件;2、如需要,则由系统自动生成隐藏对象,将文件通过隐藏对象上传到后台服务器;3、后台服务器将上传的结果返回;4、如果成功则通过系统将文件名等信息反向赋到Ajax对象中,自动与其他数据一起发送到后台,从而完成了文件和数据Ajax的同步提交。本专利具有如下优点:1、实现了Ajax数据和文件的同步上传;2、调用方式简单,需要用到的对象都是动态自动生成的;3、兼容多种浏览器,支持IE、Firefox、Chrome等主流浏览器;4、以组件的方式进行调用,所以升级和扩展更容易。
【专利说明】一种Ajax上传文件的系统及方法
【技术领域】
[0001]本发明涉及一种上传文件的系统及方法,尤其是一种自动化程度高、兼容性强的Ajax上传文件的系统及方法。
【背景技术】
[0002]Ajax是目前常用的数据通讯的方式,无刷新获取数据的方式给Web应用带来更好的操作体验,但是Ajax无法完成文件的上传,普遍的解决办法是采用第三方插件比如flash、active等或者抛弃Ajax而使用普通的FORM上传文件,这样就失去了 Ajax的优势,亟待解决既能发挥Ajax的通讯优势又能上传文件的算法。

【发明内容】

[0003]为解决上述问题,本发明提供了一种自动化程度高、兼容性强的新型Ajax上传文件的系统及方法。
[0004]实现本发明目的的一种Ajax上传文件的系统及方法,包括如下步骤:
[0005]1、在打包数据的时候由系统判断是否有需要上传的文件;
[0006]2、如果没有则直接使用Ajax将数据打包并发送到后台服务器;
[0007]3、如果有上传的文件则自动生成form对象、iframe对象和保存文件名的隐藏域;
[0008]4、将form对象的target属性指定为iframe对的name,并隐藏iframe对象;
[0009]5、提交form上传文件;
[0010]6、在返回结果里调用上一级窗口的Ajax对象,并返回的文件信息赋值给此对象;
[0011]7、自动调起Ajax发送数据,并将文件信息一起发送。
[0012]本专利具有如下优点:1、实现了 Ajax数据和文件的同步上传;2、调用方式简单,需要用到的对象都是动态自动生成的;3、兼容多种浏览器,支持IE、Firefox、Chrome等主流浏览器;4、以组件的方式进行调用,所以升级和扩展更容易。
【专利附图】

【附图说明】
[0013]图1为本发明的一种新型Ajax上传文件的系统及方法的工作流程示意图。
【具体实施方式】
[0014]如图1所示,一种Ajax上传文件的系统及方法,包括如下步骤:
[0015]1、在打包数据时由系统判断是否有需要上传的文件;
[0016]2、如果没有则直接使用Ajax将数据打包并发送到后台服务器;
[0017]3、如果有上传的文件则自动生成form对象、iframe对象和保存文件名的隐藏域;
[0018]4、将form对象的target属性指定为iframe对的name,并隐藏iframe对象;
[0019]5、提交form上传文件;
[0020]6、在返回结果里调用上一级窗口的Ajax对象,并返回的文件信息赋值给此对象;[0021]7、自动调起Ajax发送数据,并将文件信息一起发送。
[0022]本专利具有如下优点:1、实现了 Ajax数据和文件的同步上传;2、调用方式简单,需要用到的对象都是动态自动生成的;3、兼容多种浏览器,支持IE、Firefox、Chrome等主流浏览器;4、以组件的方式进行调用,所以升级和扩展更容易。
[0023]上面所述的实施例仅仅是对本发明的优选实施方式进行描述,并非对本发明的范围进行限定,在不脱离本发明设计精神前提下,本领域普通工程技术人员对本发明技术方案做出的各种变形和改进,均应落入本发明的权利要求书确定的保护范围内。
【权利要求】
1.一种Ajax上传文件的系统及方法,其特征在于,包括如下步骤:(1)、在打包数据的时候由系统判断是否有需要上传的文件;(2)、如果没有则直接使用Ajax将数据打包并发送到后台服务器;(3)、如果有上传的文件则自动生成form对象、iframe对象和保存文件名的隐藏域;(4)、将form对象的target属性指定为iframe对的name,并隐藏iframe对象;(5)、提交form上传文件;(6)、在返回结果里调用上一级窗口的Ajax对象,并返回的文件信息赋值给此对象;(7)、自动调起Ajax发送数据,并将文件信息一起发送。
【文档编号】H04L29/08GK103888482SQ201210552639
【公开日】2014年6月25日 申请日期:2012年12月19日 优先权日:2012年12月19日
【发明者】谢涛, 李学斌 申请人:北京融兴通达科技有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1