本來覺得這個系統會很復雜,但把每個部分都分 " /> www.国产色,成人黄色免费观看,国产男人搡女人免费视频

四虎精品视频-四虎精品成人免费网站-四虎黄色网-四虎国产视频-国产免费91-国产蜜臀97一区二区三区

仿163網盤無刷新文件上傳系統

這個仿163網盤無刷新文件上傳系統,并沒有用使用.NET的控件,完全的手工制作。前臺基本上是靜態的,跟后臺沒有關系,所以后臺用什么語言做都可以(后面有各個版本的實例下載)。
本來覺得這個系統會很復雜,但把每個部分都分析清楚后,其實需要的技術并不高。不過當我把各個功能函數都整理好準備進行封裝時,卻發現要把程序封裝不是那么容易,因為程序跟html的耦合度太高。然后我逐步把程序中操作html相關的部分分離出來,首先把簡單的分離,接著是文件列表,然后是file控件,最后是一些提示性程序。經過幾次嘗試才把整個結構封裝好,現在程序結構應該算比較清晰,有什么不明白的地方歡迎留言。

效果預覽

上傳文件
添加文件:
文件路徑 
溫馨提示:最多可同時上傳 個文件,只允許上傳 文件。
   
這里的預覽只是前臺的效果,要整個系統測試請下載完整實例。

程序說明

 

【無刷新上傳】
要實現文件上傳,form必須設置幾個屬性:
1.action:設為要處理數據的頁面地址;
2.method:設為"post";
3.enctype/encoding:必須設為"multipart/form-data",這里要注意的是在ie中用js修改form的enctype屬性是沒有效果的,只能修改encoding;

后面兩個屬性程序初始化時都有設置:

this.Form.method = "post";
this.Form.encoding = "multipart/form-data";

【多文件上傳】
對于多文件上傳,這里的目的是如何做到163網盤那樣,只用一個file控件就實現多文件上傳。
這里參考了163網盤的思路,下面說說如何實現:
首先必須有一個文件空間(我自己定的名字),例如程序中的"idFile"對象,這個空間不需要內容甚至一個div就可以,主要是用來存放file控件,程序中Folder屬性就是這個文件空間對象。
ps:這里的要求是把file控件都控制在文件空間里,即使不是單file控件的情況。
再說說Files屬性,這個屬性放的是file控件集合,方便獲取file控件,在下面“文件列表”就會用到。

 

處理這些file控件的程序主要在Ini函數中:
首先是處理文件空間中的file控件:

Code


【文件列表】
在上面的Ini函數中,最后執行了一個附加函數onIni,這個函數是用戶自己定義的,我就在這個函數中添加文件列表。

 

在之前先說說添加文件列表的函數AddList,這個函數是用來把file控件的值列在一個table里面。
函數的參數是一個二維數組,其中第一維是行(tr),第二維是列(td)。
首先獲取列表對象FileList,再定義一個文檔碎片oFragment來操作dom:

var FileList = $("idFileList"), oFragment = document.createDocumentFragment();

【后臺】

 

前臺基本完成了,就到后臺啦。后臺的功能很簡單,就是處理傳遞過來的文件數據。
這里像js + .NET 圖片切割系統那樣使用ashx文件處理IHttpHandler發送過來的數據。
程序很簡單,就直接貼代碼了:

Code

NET技術仿163網盤無刷新文件上傳系統,轉載需保留來源!

鄭重聲明:本文版權歸原作者所有,轉載文章僅為傳播更多信息之目的,如作者信息標記有誤,請第一時間聯系我們修改或刪除,多謝。

主站蜘蛛池模板: 杜丽莎| 美女写真视频高清福利| 孙涛个人简历| 男人天堂视频| 抖音网页入口| 赵汉善| 男人不可以穷演员表| 雪山飞狐主题曲简谱 | 辕门外三声炮歌词| 美女下面流水| 头像图| 雅雅英| 村暖花开| 尤勇智的个人资料简介| 卫途轮胎| xiuren秀人网最新地址| 唐砖演员表| 控制点电影| 什么虫子咬了又红又肿又痒硬包| 好像也没那么热血沸腾电影免费观看| 偷偷藏不住演员表| 游泳池电影| 权志龙壁纸| 追凶| 12月日历2024日历表| 韩国三级大全中文字幕999| 赫伯曼电影免费观看| 安东诺夫机场电影叫什么名字| 速度与激情9| 妇检被男医生摸到喷水| 成家立业演员表| 一夜惊喜 电影| 微信头像图片2024最新| 肢体的诱惑| 叶问3演员表| 抖音1| 超级方程式| 日韩在线激情| 卧虎演员表| 威尼斯的资料| 儿童眼轴长度正常范围|