`
imhades
  • 浏览: 23437 次
  • 性别: Icon_minigender_1
  • 来自: 广州
文章分类
社区版块
存档分类
最新评论

Dojo Toolkit 新增多文件上传类dojox.form.FileUploader

阅读更多

 

转载时请保留来源:OurJS.cn 原文: http://www.ourjs.cn/show.php?id=464

 

  Deft 是Dojo Toolkit的一个项目,本文介绍的多文件上传功能就是得益于它。

  dojox.form.FileUploader类在页面内嵌入了一个隐藏的SWF文件,当你触发它时,会打开一个对话框,这个对话框支持多文件选择和文件类型过滤。

  如果用户没有安装flash 9,则会显示一个标准的HTML file input 标签来代替它的flash界面。这个HTML表单同样支持多文件上传,不过是跟通常的多文件上传一样,多个input标签,每个标签只能选择一个文件。

  这个工具的另一个优点是,允许用户自定义上传按钮的样式。

  dojox.form.FileUploader将会包含在计划在9月份发布的Dojo Toolkit v1.2中。

 


dojox.form.FileUploader


  dojox.form.FileUploader是一个简单的包装器类。它接受参数,并做一些侦测,决定是使用dojox.form.FileInputFlash类 还是 dojox.form.FileInputOverlay类。

以下是使用FileUploader的例子:

var uploader = new dojox.form.FileInputFlash({
        uploadUrl:"http.localHost/FileUpload.php",
        button:myButton,
        uploadOnChange: false,
        selectMultipleFiles: true,
        fileMask: ["All Images", "*.jpg;*.jpeg;*.gif;*.png"],
        degradable: true
});


这个类只有一个方法: upload()
有几个方法:
onChange  - 当文件被选中时触发
onProgress  -  提供当前的上传进度相关信息(只支持flash)
onComplete  -  当文件上传完毕时触发
onError  - 发生错误时触发,比如:找不文件

 


dojox.form.FileInputFlash(Flash模式)


  FileInputFlash组件与dojox.embed.Flash一起加载。它显示时大小1px*1px,定位在左上角,是不可见的,当浏览器需要显示SWF时才会激活它。在初始化时,FileInputFlash使你的按钮与SWF内的浏览器方法连接起来,使得点击按钮就会打开对话框架。

 

 

dojox.form.FileInputOverlay(HTML模式)

  dojox.form.FileInputOverlay APIFileInputFlash 不同。主要有两点:

 

  1.  它不会触发onProgree事件

 

  2.  selectMultipleFiles = true时,用户不能选择多个文件,但是可以通过点击上传按钮添加文件上传列表。

 

 

要了解更多dojox.form.FileUploader,可访问:

http://www.sitepen.com/blog/2008/09/02/the-dojo-toolkit-multi-file-uploader/

 

http://trac.dojotoolkit.org/browser/deft/trunk/deft

 

http://archive.dojotoolkit.org/nightly/

 

 

转载时请保留来源:OurJS.cn 原文: http://www.ourjs.cn/show.php?id=464

 

 

 

 

 

分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics