`
xuedong
  • 浏览: 297796 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

JQuery上传插件Uploadify详解及其中文按钮解决方案 .

 
阅读更多

 网上找了一天,大家都说Uploadify唯一的缺点就是不支持中文按钮,杯具之前,我看了下Uploadify的API,才发现了几个参数没被大家提及的,这正是解决此问题的关键。(以后坚决养成没事就看API的习惯)

    Uploadify有一个参数是 buttonText 这个无论你怎么改都不支持中文,因为插件在js里用了一个转码方法把这个参数的值转过码了,解码的地方在那个swf文件里,看不到代码,所以这条路不行。

    另一个参数,网上很少提到,是 buttonImg( 按钮图片),这时你完全可以用一个图片来替换掉插件自带的那个黑色的flash浏览按钮,只要你自己的图片上是中文,这不就解决了中文按钮问题么?如果只加这一个,你会发现你的按钮图片下面有一片白色区域,其实就是那个flash留下的,白色区域表示鼠标可用范围,这个范围可以用width,height来调整。还有一个参数 wmode 它的默认值是opaque,把它改成transparent就行了,也就是把那片白色区域透明化。再用刚才说的方法,把按键点击范围设置成跟你图片一样大就完全OK了。

 

============================================

 

    Uploadify的用法就不说了,网上文章很多,跟别的jquery插件用法一样,就是几种文件的摆放路径而已。

    以下附上Uploadify部分参数的介绍,要看全部的就去看其API文件了,一般在下载的包里都有。

  

  uploader uploadify.swf 文件的相对路径,该swf文件是一个带有文字BROWSE的按钮,点击后弹出打开文件对话框,默认值:uploadify.swf

  script 后台处理程序的相对路径 。默认值:uploadify.php

  checkScript :用来判断上传选择的文件在服务器是否存在的后台处理程序的相对路径

  fileDataName :设置一个名字,在服务器处理程序中根据该名字来取上传文件的数据。默认为Filedata

  method 提交方式Post Get 默认为Post

  scriptAccess flash脚本文件的访问模式,如果在本地测试设置为always,默认值:sameDomain

  folder 上传文件存放的目录

  queueID 文件队列的ID,该ID与存放文件队列的divID一致。

  queueSizeLimit 当允许多文件生成时,设置选择文件的个数,默认值:999

  multi 设置为true时可以上传多个文件。

  auto 设置为true当选择文件后就直接上传了,为false需要点击上传按钮才上传

  fileDesc 这个属性值必须设置fileExt属性后才有效,用来设置选择文件对话框中的提示文本,如设置fileDesc请选择rar doc pdf文件,打开文件选择框效果如下图:

  fileExt 设置可以选择的文件的类型,格式如:'*.doc;*.pdf;*.rar'

  sizeLimit 上传文件的大小限制

  simUploadLimit 允许同时上传的个数 默认值:1

  buttonText 浏览按钮的文本,默认值:BROWSE

  buttonImg 浏览按钮的图片的路径

  hideButton 设置为true则隐藏浏览按钮的图片

  rollover 值为truefalse,设置为true时当鼠标移到浏览按钮上时有反转效果。

  width 设置浏览按钮的宽度 ,默认值:110

  height 设置浏览按钮的高度 ,默认值:30

  wmode 设置该项为transparent 可以使浏览按钮的flash背景文件透明,并且flash文件会被置为页面的最高层。 默认值:opaque

  cancelImg :选择文件到文件队列中后的每一个文件上的关闭按钮图标

 

Uploadify还自带了很多参数及有用的方法和回调函数,都在API里,虽然是全英文的,但很容易看懂,这里就不说了。

以下是我用到的代码,可以参考一下:

  1. <script type="text/javascript">  
  2. $(document).ready(function() {  
  3.   $("#uploadify").uploadify({  
  4.     'uploader'       : 'images/uploadify.swf',  
  5.     'script'         : '<%=request.getContextPath()%>/content/ImportScheduleCommitAction.do',  
  6.     'cancelImg'      : 'images/cancel.png',  
  7.     'folder'         : '/',  
  8.     'queueID'        : 'fileQueue',  
  9.     'fileDataName'   : 'uploadify',  
  10.     'fileDesc'       : '支持格式:xls.',   
  11.     'fileExt'        : '*.xls',  
  12.     'auto'           : false,  
  13.     'multi'          : true,  
  14.     'height'         : 20,  
  15.     'width'          : 50,  
  16.     'simUploadLimit' : 3,  
  17.    //'buttonText'     : 'fdsfdsf...',   
  18.     'buttonImg'      : 'images/browse.jpg',  
  19.    // 'hideButton'     : true,   
  20.    // 'rollover'       : true,   
  21.     'wmode'          : 'transparent' ,  
  22.     onComplete       : function (event, queueID, fileObj, response, data)  
  23.      {   
  24.       $('<li></li>').appendTo('.files').text(response);   
  25.      },   
  26.     onError          : function(event, queueID, fileObj)  
  27.      {   
  28.        alert("文件:" + fileObj.name + " 上传失败");   
  29.      }   
  30.   //  onCancel         : function(event, queueID, fileObj)   
  31.   //  {    
  32.   //     alert("取消文件:" + fileObj.name);    
  33.   //  }    
  34.    });  

 

 要注意的是,我的script属性值是一个请求路径,我发现在我设置了同时上传多个文件后(比如3),并不是每请求一次去上传3个文件,而仍然是执行3次请求,请求一次上传一个文件。这也没办法,uplodify有那么多回调函数,要是一次处理多个,那回调函数的参数就不知道拿哪个了,因为这些参数都不是数组。

 也就是说,无论你设置同时上传几个文件,它都会一个一个去请求并上传,只是表面上感觉好像有多个线程同时在处理上传请求一样,只是表象而已。而且如果你把simUploadLimit设置过大就会经常出错,我设置成5的时候经常会有一两个文件上传失败。

转自:http://blog.csdn.net/bob007abc/article/details/5368052

分享到:
评论

相关推荐

    JQuery上传插件Uploadify使用详解.pdf

    总之,jQuery Uploadify插件为开发者提供了一个强大且易于使用的文件上传解决方案,无论是在简单的个人项目还是大型的企业级应用中,都能发挥出色的作用。通过合理的配置和适当的扩展,你可以轻松地构建出满足需求的...

    jquery 上传插件Uploadify-v3.0.0.zip

    总之,jQuery Uploadify插件v3.0.0是一个强大且灵活的文件上传解决方案,它简化了前端与后端的文件交互,提升了用户体验。通过理解和掌握其配置与用法,开发者可以在项目中轻松实现高效的文件上传功能。

    JQuery上传插件Uploadify使用详解

    ### JQuery上传插件Uploadify使用详解 #### 一、引言 随着Web应用程序的发展,文件上传功能成为必不可少的一部分。为了简化这一过程并提供更丰富的用户体验,各种JavaScript库和框架提供了相应的解决方案。其中,...

    JQuery批量上传插件Uploadify使用详解及参数说明.docx

    **jQuery批量上传插件...总之,jQuery批量上传插件Uploadify通过其丰富的配置选项和强大的功能,为开发人员提供了灵活且用户友好的文件上传解决方案。只需适当配置,就可以轻松地实现批量、异步的文件上传功能。

    JQuery上传插件Uploadify

    **jQuery上传插件Uploadify详解** Uploadify是一款基于jQuery的前端文件上传插件,它提供了丰富的自定义选项和功能,使文件上传变得简单而高效。这个插件深受开发者喜爱,因为它能够实现异步多文件上传,同时具备...

    JQuery上传插件Uploadify并传参数(一)

    **jQuery上传插件Uploadify详解及参数传递方法** 在Web开发中,文件上传功能是常见的需求,而jQuery的Uploadify插件提供了一种简洁、高效的方式实现这一功能。本篇文章将深入探讨Uploadify插件的基本使用,以及如何...

    jQuery上传插件uploadify

    **jQuery上传插件Uploadify详解** Uploadify是一款基于jQuery的文件上传插件,它通过Flash技术实现了异步、批量的文件上传功能。在Web开发中,传统的文件上传方式往往限制了用户体验,而Uploadify的出现则极大地...

    jquery.uploadify(v1.6.2修改版).rar

    jQuery Uploadify插件应运而生,它为开发者提供了强大的文件上传解决方案,实现了异步上传和进度条显示等功能。这里我们将详细探讨jQuery Uploadify(v1.6.2修改版)的使用方法和核心特性。 一、jQuery Uploadify...

    jquery上传插件Uploadify3.2中文详细参考手册

    ### jQuery上传插件Uploadify 3.2中文详细参考手册 #### 一、概述 Uploadify是一款基于jQuery的文件上传插件,它提供了一个简单易用的接口来处理文件上传功能,尤其适用于需要多文件上传、文件预览等功能的场景。...

    jquery上传插件uploadifive

    **jQuery Uploadifive 插件详解** Uploadifive是一款基于HTML5技术的异步上传插件,它结合了jQuery库,提供了丰富的自定义选项和功能,使得文件上传变得更加便捷和用户体验友好。这款插件适用于那些需要在网页上...

    jquery uploadify资源

    jQuery Uploadify是一款高效、易用的文件上传插件,它通过结合JavaScript、CSS、Flash和PNG图像,提供了一种优雅的文件上传解决方案。本文将详细介绍jQuery Uploadify插件及其相关资源,帮助开发者更好地理解和应用...

    Jquery uploadify上传插件使用详解

    JQuery上传插件Uploadify是一种流行的基于Flash的文件上传组件,它与JQuery框架结合使用,提供了一个简便的方式来实现文件的上传功能,并带有上传进度条显示。在Web开发中,文件上传是一个常见的需求,使用JQuery ...

    jquery上传附件uploadify

    在Web应用中,尤其是在需要处理大量用户上传文件的场景下,Uploadify 提供了强大的解决方案。 ### 1. 多文件上传 Uploadify 支持多文件同时上传,这意味着用户可以一次性选择多个文件进行上传,极大地提高了用户的...

    jquery.uploadify实例Demo

    总的来说,jQuery.uploadify 3.2.1提供了一个强大且灵活的文件上传解决方案,无论是前端交互设计还是后端数据处理,都有充分的定制空间,使得文件上传成为网页应用中的一个无缝体验。对于需要处理大量用户上传内容的...

    jquery.uploadify用法.doc

    ### jQuery Uploadify 使用详解 #### 一、简介 jQuery Uploadify 是一款强大的文件上传插件,它基于Flash技术实现,并且能够与jQuery无缝集成。该插件提供了丰富的自定义选项和事件,支持文件预览、多文件上传、...

    jquery uploadify插件多文件上传(带代码)

    总的来说,jQuery Uploadify是一个强大且易于使用的多文件上传解决方案,它可以帮助开发者轻松实现文件上传功能,同时提供了丰富的定制选项以满足不同的需求。无论你是新手还是经验丰富的开发者,都能从这个插件中...

    jquery.uploadify-v2.1.4

    综上所述,jQuery Uploadify是一个强大而灵活的文件上传解决方案,通过其丰富的配置选项和事件机制,可以满足各种复杂的上传需求。无论你是前端开发者还是后端开发者,掌握Uploadify都能提升你的项目效率。

    jquery uploadify批量上传中文版

    在Web开发中,文件上传是一项常见的功能,而jQuery Uploadify插件因其简洁的API和强大的功能,成为众多开发者首选的批量上传解决方案。尤其是其支持中文版本,更是方便了中文用户进行操作。本文将深入解析jQuery ...

Global site tag (gtag.js) - Google Analytics