上傳文件的時(shí)候打算用Ajax方法,這樣用戶體驗(yàn)好一些,找來(lái)找去還是Uploadify好些,可惜相關(guān)的幫助文檔不好找,,園里有一篇可惜是2年前2.1版本的,和現(xiàn)在最新的3.2版差別很大,,很多Option都已經(jīng)取消了,。唯一可用的就是官網(wǎng)(http://www./),里面的資料還是很詳細(xì)的,,所以打算把它整理成中文以便于以后查閱(Flash版Uploadify),。
- Options(選項(xiàng)、參數(shù)):
Option
|
Input Type
|
Default Value
|
Required
|
Info
|
auto
|
Boolean
|
true
|
|
選擇文件后是否自動(dòng)上傳,,如果為false則需額外再添加一個(gè)按鈕之類(lèi)的去調(diào)用uploadify()函數(shù)
|
buttonClass
|
String
|
Empty String
|
√
|
設(shè)置Uploadify按鈕CSS樣式
|
buttonCursor
|
String
|
'hand'
|
|
設(shè)置鼠標(biāo)放在Uploadify按鈕上的樣式,,可能的值是’hand’ 、‘a(chǎn)rrow’
|
buttonImage
|
String
|
null
|
|
設(shè)置按鈕背景圖片的地址,,不過(guò)推薦寫(xiě)在CSS中
|
buttonText
|
String
|
'SELECT FILES'
|
|
設(shè)置按鈕中的文字,,支持中文
|
checkExisting
|
String
|
false
|
|
設(shè)置一個(gè)路徑在服務(wù)器端檢測(cè)文件是否已存在,返回1和0分別代表已存在,、不存在
|
debug
|
Boolean
|
false
|
|
轉(zhuǎn)換到調(diào)試模式
|
fileObjName
|
String
|
'Filedata'
|
|
設(shè)置上傳的文件在服務(wù)器端的參數(shù),,比如在C#端就可以用Request.Files["Filedata"]獲取上傳的文件
|
fileSizeLimit
|
Number/String
|
|
|
上傳文件大小限制,默認(rèn)以KB為單位,,也可傳入字符串參數(shù)自定義其他單位(B/MB/GB),設(shè)置為0代表不限制
|
fileTypeDesc
|
String
|
'All Files'
|
|
瀏覽文件對(duì)話框中文件類(lèi)型的描述
|
fileTypeExts
|
String
|
'*.*'
|
|
限制上傳文件的拓展名(i.e. ‘*.jpg; *.png; *.gif’)
|
formData
|
JSON Object
|
Empty Object
|
|
如字面意思,,文件上傳同時(shí)向后臺(tái)傳遞的表單數(shù)據(jù),Json格式傳遞
|
height
|
Number
|
30
|
|
按鈕高度(PX)
|
itemTemplate
|
String
|
false
|
|
可以設(shè)置文件上傳隊(duì)列的HTML模版,,四個(gè)模版標(biāo)簽:1. instanceID:當(dāng)前Uploadify實(shí)例的ID,;2. fileID:隊(duì)列中文件的ID;3. fileName:文件名4. fileSize:文件大小,。這樣插入模版標(biāo)簽:${fileName}
|
method
|
String
|
'post'
|
|
提交文件上傳表單的方式:”get”,,”post”
|
multi
|
Boolean
|
True
|
|
選擇文件是一次是否能選擇多個(gè)
|
overrideEvents
|
JSON Array
|
Empty Array
|
|
你想要繞過(guò)默認(rèn)事件的腳本名的數(shù)組,就是想要覆蓋掉的頁(yè)面事件,。
|
preventCaching
|
Boolean
|
true
|
|
防止SWF文件緩存,,默認(rèn)會(huì)為SWF文件請(qǐng)求加上一個(gè)隨機(jī)數(shù)參數(shù)
|
progressData
|
String
|
'percentage'
|
|
顯示上傳進(jìn)度的方式,百分比/速度:‘percentage’ /‘speed’
|
queueID
|
String
|
false
|
|
可以手工設(shè)置文件上傳隊(duì)列的ID,,默認(rèn)會(huì)自動(dòng)生成一個(gè)(手工設(shè)置ID后就可以自定義CSS樣式了)
|
queueSizeLimit
|
Number
|
999
|
|
同一時(shí)間,,上傳文件隊(duì)列的最大數(shù)量(不是可上傳文件總數(shù))。如果隊(duì)列中的文件數(shù)超過(guò)此限制,onSelectError的事件被觸發(fā),。
|
removeCompleted
|
Boolean
|
true
|
|
完成的隊(duì)列是保持顯示還是移除(DOM)
|
removeTimeout
|
Number
|
3
|
|
完成的隊(duì)列移除(DOM)的時(shí)延秒數(shù)
|
requeueErrors
|
Boolean
|
false
|
|
如果設(shè)置為true,則返回錯(cuò)誤,,并重新排隊(duì),,嘗試再次上傳文件
|
successTimeout
|
Number
|
30
|
|
文件完成上傳后等待服務(wù)器返回響應(yīng)的時(shí)間,如果超過(guò)這個(gè)時(shí)間將會(huì)自行斷言上傳成功,。
|
swf
|
String
|
'uploadify.swf'
|
√
|
uploadify.swf文件的路徑
|
uploader
|
String
|
'uploadify.php'
|
√
|
服務(wù)器端上傳文件的腳本路徑
|
uploadLimit
|
Number
|
999
|
|
允許上傳文件的總數(shù),。如果超過(guò)這個(gè)數(shù)量onUploadError事件將會(huì)被觸發(fā)
|
width
|
Number
|
120
|
|
按鈕寬度(PX)
|
Event
|
Arguments
|
Overridable
|
Info
|
onCancel
|
file
|
|
取消上傳時(shí)觸發(fā),參數(shù)為當(dāng)前文件對(duì)象
|
onClearQueue
|
queueItemCount
|
|
當(dāng)’cancel’方法以’*’作為參數(shù)時(shí)觸發(fā),,如$('#file_upload').uploadify('cancel','*')
|
onDestroy
|
|
|
由’destroy’方法觸發(fā)
|
onDialogClose
|
queueData:包含以下隊(duì)列信息:1. filesSelected瀏覽文件對(duì)話框中選擇文件的數(shù)量 2. filesQueued:添加到隊(duì)列中的文件數(shù)(沒(méi)有返回錯(cuò)誤的)3.filesReplaced:隊(duì)列中的替換的文件數(shù) 4. filesCancelled:添加到隊(duì)列中取消文件的數(shù)量(不是替換) 5. filesErrored:返回錯(cuò)誤的文件數(shù)
|
N/A
|
當(dāng)瀏覽文件窗口關(guān)閉時(shí)被觸發(fā),。如果該事件被添加在overrideEvents選項(xiàng)中,那么若添加文件時(shí)發(fā)生錯(cuò)誤后,,不會(huì)提示默認(rèn)錯(cuò)誤信息
|
onDialogOpen
|
|
|
瀏覽文件窗口打開(kāi)時(shí)觸發(fā)
|
onDisable
|
|
|
由’disable’方法(參數(shù)為true時(shí))觸發(fā)
|
onEnable
|
|
|
由’disable’方法(參數(shù)為false時(shí))觸發(fā)
|
onFallback
|
|
|
在初始化過(guò)程中觸發(fā),,如果未檢測(cè)到瀏覽器中兼容版本的Flash player
|
onInit
|
|
|
Uploadify第一次被調(diào)用時(shí)初始化最后被調(diào)用
|
onQueueComplete
|
queueData:包含以下隊(duì)列信息:uploadsSuccessful、uploadsErrored分別是上傳成功/失敗的文件數(shù)量
|
|
隊(duì)列中文件傳輸完成時(shí)被調(diào)用
|
onSelect
|
file:被選擇的文件對(duì)象
|
N/A
|
當(dāng)每個(gè)文件被選擇并添加到隊(duì)列中時(shí)觸發(fā)
|
onSelectError
|
|
N/A
|
當(dāng)每個(gè)文件被選擇時(shí)返回錯(cuò)誤后觸發(fā)
|
onSWFReady
|
|
|
Flash對(duì)象(SWF按鈕)加載完成時(shí)觸發(fā)
|
onUploadComplete
|
file:上傳的文件對(duì)象或返回一個(gè)錯(cuò)誤,。
|
N/A
|
每個(gè)文件上傳完成時(shí),,無(wú)論是成功或返回一個(gè)錯(cuò)誤觸發(fā)一次。
|
onUploadError
|
file:已經(jīng)上傳的文件對(duì)象
errorCode:返回的錯(cuò)誤碼
errorMsg:返回的錯(cuò)誤信息
errorString:可讀(面向用戶)的錯(cuò)誤信息,,包含作物詳細(xì)信息
|
|
文件上傳后服務(wù)器端返回錯(cuò)誤時(shí)觸發(fā)
|
onUploadProgress
|
file:上傳文件對(duì)象
bytesUploaded:已上傳的字節(jié)數(shù)
bytesTotal:當(dāng)前文件的總字節(jié)數(shù)
totalBytesUploaded:在當(dāng)前上傳操作上傳的字節(jié)總數(shù)(所有文件)
totalBytesTotal:總要上傳的字節(jié)數(shù)(所有文件)
|
|
文件上傳進(jìn)度信息每次更新時(shí)觸發(fā)(可用于自定義文件上傳進(jìn)度顯示)
|
onUploadStart
|
file:即將上傳的文件對(duì)象
|
|
上傳文件前觸發(fā)
|
onUploadSuccess
|
file:已上傳文件的對(duì)象
Data:服務(wù)器端返回的數(shù)據(jù)
Response:服務(wù)器端返回的響應(yīng),,成功則為true,無(wú)響應(yīng)則為false
|
N/A
|
每個(gè)文件上傳后服務(wù)器返回成功時(shí)觸發(fā)
|
Method
|
Arguments
|
Info
|
cancel
|
fileID:可以輸入任意數(shù)量文件的ID,,如果以“*”作為第一個(gè)參數(shù),,則隊(duì)列中的所有文件將被取消。如果沒(méi)有任何文件ID作為參數(shù),,則隊(duì)列中的第一個(gè)文件將被取消,。
suppressEvent:如果設(shè)置為true,onUploadCancel事件將被阻止,。清除隊(duì)列時(shí),,這是非常有用的。
|
上傳文件時(shí)取消隊(duì)列中的一個(gè)文件
|
destroy
|
|
清空Uploadify中所有文件輸入,,并返回到初始狀態(tài)
|
disable
|
setDisabled:設(shè)置true/false來(lái)禁用/啟用按鈕
|
|
settings
|
Name:設(shè)置的名稱(chēng),。僅設(shè)置這個(gè)參數(shù)將返回值。
Value:設(shè)置的值
resetObjects:設(shè)置為true時(shí),,更新的postData對(duì)象刪除現(xiàn)有的值,。否則,新的值將被添加到現(xiàn)有的,。
|
獲取或設(shè)置某個(gè)Uploadify實(shí)例的設(shè)置選項(xiàng)(Swf文件設(shè)置無(wú)法改變)
|
stop
|
|
停止當(dāng)前所有上傳和重新排隊(duì)的過(guò)程
|
upload
|
fileID:可傳入多個(gè)欲上傳文件的ID作為參數(shù),,如果僅以“*”作為參數(shù),則代表所有文件
|
上傳特定文件或隊(duì)列中所有文件
|
好了,Uploadify客戶端這邊的配置基本就這么多了,,補(bǔ)充一點(diǎn)Uploadify 3.2的版本里取消了原先的‘cancelImg’配置選項(xiàng),,而是把它放到了CSS中,現(xiàn)在uploadify-cancel.png這張圖片的路徑(相對(duì)uploadify.css)默認(rèn)為“../img/uploadify-cancel.png”,。對(duì)于本文中出現(xiàn)的錯(cuò)誤,,歡迎不吝指正。在下一遍隨筆里會(huì)介紹服務(wù)器端的設(shè)置,,并做一些demo,,現(xiàn)在時(shí)間也不早了。
|