一種Ajax上傳文件的系統(tǒng)及方法
【專(zhuān)利摘要】本發(fā)明公開(kāi)了一種Ajax上傳文件的系統(tǒng)及方法,包括如下步驟:1、由系統(tǒng)判斷是否上傳文件;2、如需要,則由系統(tǒng)自動(dòng)生成隱藏對(duì)象,將文件通過(guò)隱藏對(duì)象上傳到后臺(tái)服務(wù)器;3、后臺(tái)服務(wù)器將上傳的結(jié)果返回;4、如果成功則通過(guò)系統(tǒng)將文件名等信息反向賦到Ajax對(duì)象中,自動(dòng)與其他數(shù)據(jù)一起發(fā)送到后臺(tái),從而完成了文件和數(shù)據(jù)Ajax的同步提交。本專(zhuān)利具有如下優(yōu)點(diǎn):1、實(shí)現(xiàn)了Ajax數(shù)據(jù)和文件的同步上傳;2、調(diào)用方式簡(jiǎn)單,需要用到的對(duì)象都是動(dòng)態(tài)自動(dòng)生成的;3、兼容多種瀏覽器,支持IE、Firefox、Chrome等主流瀏覽器;4、以組件的方式進(jìn)行調(diào)用,所以升級(jí)和擴(kuò)展更容易。
【專(zhuān)利說(shuō)明】一種Ajax上傳文件的系統(tǒng)及方法
【技術(shù)領(lǐng)域】
[0001]本發(fā)明涉及一種上傳文件的系統(tǒng)及方法,尤其是一種自動(dòng)化程度高、兼容性強(qiáng)的Ajax上傳文件的系統(tǒng)及方法。
【背景技術(shù)】
[0002]Ajax是目前常用的數(shù)據(jù)通訊的方式,無(wú)刷新獲取數(shù)據(jù)的方式給Web應(yīng)用帶來(lái)更好的操作體驗(yàn),但是Ajax無(wú)法完成文件的上傳,普遍的解決辦法是采用第三方插件比如flash、active等或者拋棄Ajax而使用普通的FORM上傳文件,這樣就失去了 Ajax的優(yōu)勢(shì),亟待解決既能發(fā)揮Ajax的通訊優(yōu)勢(shì)又能上傳文件的算法。
【發(fā)明內(nèi)容】
[0003]為解決上述問(wèn)題,本發(fā)明提供了一種自動(dòng)化程度高、兼容性強(qiáng)的新型Ajax上傳文件的系統(tǒng)及方法。
[0004]實(shí)現(xiàn)本發(fā)明目的的一種Ajax上傳文件的系統(tǒng)及方法,包括如下步驟:
[0005]1、在打包數(shù)據(jù)的時(shí)候由系統(tǒng)判斷是否有需要上傳的文件;
[0006]2、如果沒(méi)有則直接使用Ajax將數(shù)據(jù)打包并發(fā)送到后臺(tái)服務(wù)器;
[0007]3、如果有上傳的文件則自動(dòng)生成form對(duì)象、iframe對(duì)象和保存文件名的隱藏域;
[0008]4、將form對(duì)象的target屬性指定為iframe對(duì)的name,并隱藏iframe對(duì)象;
[0009]5、提交form上傳文件;
[0010]6、在返回結(jié)果里調(diào)用上一級(jí)窗口的Ajax對(duì)象,并返回的文件信息賦值給此對(duì)象;
[0011]7、自動(dòng)調(diào)起Ajax發(fā)送數(shù)據(jù),并將文件信息一起發(fā)送。
[0012]本專(zhuān)利具有如下優(yōu)點(diǎn):1、實(shí)現(xiàn)了 Ajax數(shù)據(jù)和文件的同步上傳;2、調(diào)用方式簡(jiǎn)單,需要用到的對(duì)象都是動(dòng)態(tài)自動(dòng)生成的;3、兼容多種瀏覽器,支持IE、Firefox、Chrome等主流瀏覽器;4、以組件的方式進(jìn)行調(diào)用,所以升級(jí)和擴(kuò)展更容易。
【專(zhuān)利附圖】
【附圖說(shuō)明】
[0013]圖1為本發(fā)明的一種新型Ajax上傳文件的系統(tǒng)及方法的工作流程示意圖。
【具體實(shí)施方式】
[0014]如圖1所示,一種Ajax上傳文件的系統(tǒng)及方法,包括如下步驟:
[0015]1、在打包數(shù)據(jù)時(shí)由系統(tǒng)判斷是否有需要上傳的文件;
[0016]2、如果沒(méi)有則直接使用Ajax將數(shù)據(jù)打包并發(fā)送到后臺(tái)服務(wù)器;
[0017]3、如果有上傳的文件則自動(dòng)生成form對(duì)象、iframe對(duì)象和保存文件名的隱藏域;
[0018]4、將form對(duì)象的target屬性指定為iframe對(duì)的name,并隱藏iframe對(duì)象;
[0019]5、提交form上傳文件;
[0020]6、在返回結(jié)果里調(diào)用上一級(jí)窗口的Ajax對(duì)象,并返回的文件信息賦值給此對(duì)象;[0021]7、自動(dòng)調(diào)起Ajax發(fā)送數(shù)據(jù),并將文件信息一起發(fā)送。
[0022]本專(zhuān)利具有如下優(yōu)點(diǎn):1、實(shí)現(xiàn)了 Ajax數(shù)據(jù)和文件的同步上傳;2、調(diào)用方式簡(jiǎn)單,需要用到的對(duì)象都是動(dòng)態(tài)自動(dòng)生成的;3、兼容多種瀏覽器,支持IE、Firefox、Chrome等主流瀏覽器;4、以組件的方式進(jìn)行調(diào)用,所以升級(jí)和擴(kuò)展更容易。
[0023]上面所述的實(shí)施例僅僅是對(duì)本發(fā)明的優(yōu)選實(shí)施方式進(jìn)行描述,并非對(duì)本發(fā)明的范圍進(jìn)行限定,在不脫離本發(fā)明設(shè)計(jì)精神前提下,本領(lǐng)域普通工程技術(shù)人員對(duì)本發(fā)明技術(shù)方案做出的各種變形和改進(jìn),均應(yīng)落入本發(fā)明的權(quán)利要求書(shū)確定的保護(hù)范圍內(nèi)。
【權(quán)利要求】
1.一種Ajax上傳文件的系統(tǒng)及方法,其特征在于,包括如下步驟:(1)、在打包數(shù)據(jù)的時(shí)候由系統(tǒng)判斷是否有需要上傳的文件;(2)、如果沒(méi)有則直接使用Ajax將數(shù)據(jù)打包并發(fā)送到后臺(tái)服務(wù)器;(3)、如果有上傳的文件則自動(dòng)生成form對(duì)象、iframe對(duì)象和保存文件名的隱藏域;(4)、將form對(duì)象的target屬性指定為iframe對(duì)的name,并隱藏iframe對(duì)象;(5)、提交form上傳文件;(6)、在返回結(jié)果里調(diào)用上一級(jí)窗口的Ajax對(duì)象,并返回的文件信息賦值給此對(duì)象;(7)、自動(dòng)調(diào)起Ajax發(fā)送數(shù)據(jù),并將文件信息一起發(fā)送。
【文檔編號(hào)】H04L29/08GK103888482SQ201210552639
【公開(kāi)日】2014年6月25日 申請(qǐng)日期:2012年12月19日 優(yōu)先權(quán)日:2012年12月19日
【發(fā)明者】謝濤, 李學(xué)斌 申請(qǐng)人:北京融興通達(dá)科技有限公司