JQuery上传插件Uploadify使用详解

来源:互联网 发布:播音制作软件 编辑:程序博客网 时间:2024/05/16 16:03

Uploadify是一个易集成的多文件上传解决方案。作为一个jQuery插件,Uploadify不仅使用简单而且可定制性非常强。


尽管成功部署Uploadify可能需要掌握一定的jQuery知识,但是此帮助文档所提供的参考,应该足以帮助那些在使用Uploadify过程中遇到困难的人。如果你遇到了此文档无法为你解决的问题,可以访问Uploadify用户社区来寻求帮助。 另外,我们还提供了一系列的常见问题 ,也有助于你顺利使用Uploadify。


部署
在部署一个Uploadify实例之前,必须确保满足最小需求:


jQuery 1.4.x or greater
swfObject 2.2 or greater
Flash Player 9.0.24 or greater
下载最新的zip压缩包。将以下文件解压缩到你网站根目录的"uploadify"文件夹中。


cancel.png
jquery.uploadify.v2.1.4.min.js
jquery-1.4.2.min.js
swfobject.js
uploadify.css
uploadify.php
uploadify.swf

在你的网站根目录新建一个页面,然后将以下代码粘帖到HTML文档的HEAD部分:


<script type="text/javascript" src="$!path/main/js/uploadify/jquery.uploadify.v2.0.1.js" 
charset="UTF-8"></script>

  <script type="text/javascript">
  function getItem(){
var dlg = new J.ui.dialog({id : 'd1',title : '文章所属栏目', page : '$!path/getDocItem.do',btns:true,width: 280, height: 310 ,cover:true});
dlg.ShowDialog();
  }
 
  $(document).ready(function(){
  var class_var = $(this).attr('uploadifyImg');
  var class_vo  = $(this).attr('uploadifVideo');


$("#uploadifVideo").uploadify({
'uploader' : '$!path/main/uploadify.swf',
'script' : '$!path/fileUpload.do',
'cancelImg' : '$!path/main/images/uploadify/cancel.png',
'folder' : 'uploads',
'scriptData' : {'isUploadImg':'3','docId':'$!docInfo.docId'}, //需要传到后台的参数
'queueId' : 'voQueue',     
'auto' : false,
'multi' : false,                                //true允许用户选择多个文件false只能选择一个文件

'queueSizeLimit' : 1,                             
'simUploadLimit': 1,//只上传一次
'fileDesc' :'请选择文件类型($!MediaType)',
'sizeLimit' :'$!fileMaxSize',          //动态控制上传文件的大小,单位byte ,toAdd.do里面获取文件的大小和类型等参数传给前台页面
'fileExt' :'$!MediaType',
'buttonText' :'',
'buttonImg'  :'$!path/main/images/uploadify/xz.gif',
'onComplete' : function(event,queueID,fileObj,response,data){  //上传成功触发
var st = response.split(',');
var str = "<li id='"
+ st[2]
+ "'>"
+ st[1]
+ "<a href=\"javascript:todeleteAtt('"
+ st[2]
+ "')\" title=''><img src='$!path/main/images/icon/delete.gif'/></a></li>";
$('#VoId').append(str);                         //成功后在DIV中显示上传的文件

if(st[2]!=""){

$("#vouploadStart").hide();
$("#vouploadCancel").hide();                  

}
});


</script>


*确保上传文件夹存在并且是可写的。




在页面的body部分,添加如下代码:
<ul id="VoId">
</ul>                   //上传成功显示的位置

<div id="voQueue" class="voQueue"> </div>
<input type="file" name="uploadifVideo" id="uploadifVideo" />   //对应上面的'queueId' : 'voQueue',
<a href="javascript:$('#uploadifVideo').uploadifyUpload();" id="vouploadStart">开始上传</a>
<a href="javascript:jQuery('#uploadifVideo').uploadifyClearQueue()" id="vouploadCancel">取消上传</a>


效果如下:

1 选择需要上传的文件:

鍀



2. 选择后显示需要上传的文件

鲁

3 。点击上传实现上传进度条加载

承


4.上传成功:


承




注意事项:
我们强烈建议使用相对于网站根目录的路径(也就是以一个正斜杠'/'开始)。否则,Uploadify将使用相对于当前页面的路径。
应用于Uploadify的每个元素必须拥有一个唯一的ID属性。你可以参考引用class的元素,但是每个元素必须拥有一个唯一的ID。
如果你想要对Uploadify进行更多的定制,可以使用下面的可选项。


可选项
(布尔型)
auto
当文件被添加到队列时,自动上传。
(字符串)
buttonImg
浏览按钮的背景图片路径。
(字符串)
buttonText
默认在按钮上显示的文本。
(字符串)
cancelImg
取消按钮的背景图片路径。
(字符串)
checkScript
用以检查服务器上已存在文件的后台脚本的路径。【译者注:应该是ajax方式】
(字符串)
displayData
在上传过程中显示在队列里的数据类型。
(字符串)
expressInstall
expressInstall.swf文件的路径。
(字符串)
fileDataName
后台脚本中要处理的file域的名称。【译者注:就是type为file的input的name值】
(字符串)
fileDesc
在浏览窗口底部的文件类型下拉菜单中显示的文本。
(字符串)
fileExt
允许上传的文件后缀。【译者注:.jpg/.png等】
(字符串)
folder
上传文件夹的路径,文件上传后将被保存于此。
(整型)
height
浏览按钮的高度。
(布尔型)
hideButton
设置为true将隐藏flash按钮,这样你就可以为下面的div元素定义样式。
(字符串)
method
向后台脚本放送数据的表单方法。
(布尔型)
multi
设置为true将允许多文件上传。
(字符串)
queueID
页面中,你想要用来作为文件队列的元素的id。
(整型)
queueSizeLimit
上传队列中所允许的文件数量。
(布尔型)
removeCompleted
设置为true将自动移除队列中已经完成上传的项目。
(布尔型)
rollover
设置为true将激活浏览按钮的鼠标划过状态。
(字符串)
script
处理文件上传的后台脚本的路径。
(字符串)
scriptAccess
设置在主swf文件中的脚本访问模式。
(JSON object with mixed types)
scriptData
在文件上传时,应该被发送给后台脚本的一个包含name/value键值对以及一些额外信息的json对象。
(整型)
simUploadLimit
允许同时上传的文件数量。
(整型)
sizeLimit
上传文件的大小限制,单位为字节。
(字符串)
uploader
uploadify.swf文件的路径。
(整型)
width
浏览按钮的宽度。
(字符串)
wmode
flash文件的wmode。
事件
(函数)
onAllComplete
当上传队列中的所有文件都完成上传时触发。
(函数)
onCancel
当从上传队列每移除一个文件时触发一次。
(函数)
onCheck
在上传开始之前,如果检测到一个同名文件时触发。
(函数)
onClearQueue
当uploadifyClearQueue()方法被调用时触发。
(函数)
onComplete
每完成一次文件上传时触发一次。
(函数)
onError
当上传返回错误时触发。
(函数)
onInit
当Uploadify实例被载入时触发。
(函数)
onOpen
当上传队列中的一个文件开始上传时就触发一次。
(函数)
onProgress
在上传过程中触发。
(函数)
onQueueFull
当文件数量达到上传队列限制时触发。
(函数)
onSelect
每向上传队列添加一个文件时触发。
(函数)
onSelectOnce
每向上传队列添加一个或一组文件时触发。
(函数)
onSWFReady
当flash文件载入完成时触发。
方法
.uploadify()
创建Uploadify上传组件的一个实例。
.uploadifyCancel()
从上传队列移除一个文件。如果文件正在上传,该方法将先取消上传,然后再将文件移除出上传队列。
.uploadifyClearQueue()
将所有文件移除出上传队列,并且取消正在执行的所有上传。
.uploadifySettings()
改变Uploadify组件的可选参数。
.uploadifyUpload()
触发上传。





0 0