javaWEB项目中如何实现批量选择文件并上传呢?有什么好的插件,最好有相关代码例子

javaWEB项目中如何实现批量选择文件并上传呢?有什么好的插件,最好有相关代码例子,第1张

jquery.uploadify批量上传控件

[html] 

<link href="styles/uploadify.css" rel="stylesheet" type="text/css" /> 

<script type="text/javascript" src="styles/uploadify.swf"></script> 

<script type="text/javascript" src="javascripts/jquery.uploadify.min.js"></script>  

<link href="styles/uploadify.css" rel="stylesheet" type="text/css" />

<script type="text/javascript" src="styles/uploadify.swf"></script>

<script type="text/javascript" src="javascripts/jquery.uploadify.min.js"></script> 还有jquery.js,你懂得!

这里注意哦,css文件会引用到这个图片哦,所以请你指定这个图片的位置哦,不然就没有显示这个叉叉哦,这个叉叉是删除按钮的哦,没有就是空白哦!

[javascript]

<script> 

function snedUpLoad(){ 

    var pid = $("#entityId").val()                //这个是我自己获取的自定义参数  

    var entityName = $("#entityName").val()       //同上  

    $("#uploadify").uploadify({                    //初始化uploadify  uploadify是input的id  

        //'debug' : false,                             //dubug模式 ,默认是false  

        'auto':false,                                  //自动上传,就是控件自动上传,默认是true  

        'multi':true, 

        //'successTimeout':99999,                      //超时时间  

        'formData':{'pid':pid,'entityName':entityName },//我的参数列表  

        //'fileObjName':'uploadify',                   //服务器的属性名字  

        

'uploader':'你的后台url地址jsessionid=${pageContext.session.id}',//提交服务器路径,这里

说明下jsessionid=${pageContext.session.id},这个是用于非IE内核的浏览器兼容的  

        'swf':"styles/uploadify.swf",                  //flash文件,官方的文件,引用上就是了  

        //'uploader': '/Home/Upload',                  //文件保存路径   用处不大  

        'buttonText': '文件上传',           //按钮  

        //'height':'32',                //浏览按钮的高度     

        //'width':'100',                               //浏览按钮的宽度  

        'fileTypeDesc':'支持的格式:',                 //在浏览窗口底部的文件类型下拉菜单中显示的文本  

        'fileTypeExts':'*.jpg*.jpge*.gif*.png',     //允许上传的文件后缀  

        'fileSizeLimit':'3MB',                         //上传文件的大小限制  

        'queueSizeLimit' : 25,                         //上传数量  

        'onSelectError':function(file, errorCode, errorMsg){  //返回一个错误,选择文件的时候触发  

           switch(errorCode) { 

               case -100: 

                   alert("上传的文件数量已经超出系统限制的"+$('#file_upload').uploadify('settings','queueSizeLimit')+"个文件!") 

                   break 

               case -110: 

                   alert("文件 ["+file.name+"] 大小超出系统限制的"+$('#file_upload').uploadify('settings','fileSizeLimit')+"大小!") 

                   break 

               case -120: 

                   alert("文件 ["+file.name+"] 大小异常!") 

                   break 

               case -130: 

                   alert("文件 ["+file.name+"] 类型不正确!") 

                   break 

           } 

        }, 

        'onFallback':function(){             //检测FLASH失败调用  

            alert("您未安装FLASH控件,无法上传图片!请安装FLASH控件后再试。") 

        }, 

        'onUploadSuccess':function(file, data, response){  //上传到服务器,服务器返回相应信息到data里  

            if(data){ 

                var dataObj=eval("("+data+")")//转换为json对象   

                //$('#uploadify').uploadify('upload')  

            } 

        } 

    }) 

</script> 

<script>

function snedUpLoad(){

 var pid = $("#entityId").val()                //这个是我自己获取的自定义参数

 var entityName = $("#entityName").val()       //同上

 $("#uploadify").uploadify({                    //初始化uploadify  uploadify是input的id

        //'debug' : false,                             //dubug模式 ,默认是false

        'auto':false,                                  //自动上传,就是控件自动上传,默认是true

        'multi':true,

        //'successTimeout':99999,                      //超时时间

        'formData':{'pid':pid,'entityName':entityName },//我的参数列表

        //'fileObjName':'uploadify',                   //服务器的属性名字

        

'uploader':'你的后台url地址jsessionid=${pageContext.session.id}',//提交服务器路径,这里

说明下jsessionid=${pageContext.session.id},这个是用于非IE内核的浏览器兼容的

        'swf':"styles/uploadify.swf",                  //flash文件,官方的文件,引用上就是了

        //'uploader': '/Home/Upload',                  //文件保存路径   用处不大

        'buttonText': '文件上传',   //按钮

        //'height':'32',    //浏览按钮的高度 

       //'width':'100',                               //浏览按钮的宽度

       'fileTypeDesc':'支持的格式:',                 //在浏览窗口底部的文件类型下拉菜单中显示的文本

        'fileTypeExts':'*.jpg*.jpge*.gif*.png',     //允许上传的文件后缀

        'fileSizeLimit':'3MB',                         //上传文件的大小限制

        'queueSizeLimit' : 25,                         //上传数量

        'onSelectError':function(file, errorCode, errorMsg){  //返回一个错误,选择文件的时候触发

           switch(errorCode) {

               case -100:

                   alert("上传的文件数量已经超出系统限制的"+$('#file_upload').uploadify('settings','queueSizeLimit')+"个文件!")

                   break

               case -110:

                   alert("文件 ["+file.name+"] 大小超出系统限制的"+$('#file_upload').uploadify('settings','fileSizeLimit')+"大小!")

                   break

               case -120:

                   alert("文件 ["+file.name+"] 大小异常!")

                   break

               case -130:

                   alert("文件 ["+file.name+"] 类型不正确!")

                   break

           }

        },

        'onFallback':function(){             //检测FLASH失败调用

            alert("您未安装FLASH控件,无法上传图片!请安装FLASH控件后再试。")

        },

        'onUploadSuccess':function(file, data, response){  //上传到服务器,服务器返回相应信息到data里

         if(data){

          var dataObj=eval("("+data+")")//转换为json对象

    //$('#uploadify').uploadify('upload')

         }

        }

    })

}

</script>

 

[javascript]

$(function(){ 

    snedUpLoad()    //jquery容器加载完运行我们的函数  

}) 

$(function(){

    snedUpLoad()    //jquery容器加载完运行我们的函数

})

 

 

[html]

<input type="file" name="uploadify" id="uploadify" />  //申明控件的容器 

<input type="file" name="uploadify" id="uploadify" />  //申明控件的容器

前台页面代码基本就这样了,很好明白,至于后台逻辑和普通上传处理一致的,这里就不列出来的,最后上一张图给大家鉴赏一下

(tip:其实他的批量上传并不是一次全部提交处理的,他是一个一个依次提交,相当是一个for循环,所以后台处理的同时只是一个文件上传,即排序的处理上传文件,就和单个文件上传的代码一样,如果你早有后台的单文件上传代码就不用改,直接调用就行了,可以共用)

用JSP可以批量上传,要想带进度条,单单JSP似乎难以做到,但可借用一些JS插件,如:ExtJS。

ExtJS里面有进度条功能,将JSP与ExtJS内部的数据结合起来,应该可以实现,不过这种我没做过。

在我所见中,163邮箱里有这种的功能,可以参考一下。

问题一:百度网盘怎么一次上传一个文件夹包括文件夹里面的所有的文件 可以使用百度云管家上传

百度云管家下载地址:pan.baidu/download

问题二:百度网盘照片视频音乐怎么批量上传 你用客户端同步啊,下载安装百度网盘客户端,完了以后,把照片音乐视频复制到百度云文件夹,当然你可以新建三个文件夹分类,然后百度云就自己同步了。很方便的。你不用在网页上传。

问题三:怎样用电脑“批量'上传照片到百度云? 可以用鼠标拖动进行全选或者选中第一个后,按住Shift键,再选中最后一个,就可以全部选中了

Win7也是一样的

假如要全部选中的话,还可以按 Ctrl+A

建议下载百度云客户端来使用百度云,这样很多问题通常都能得到解决的

或者下载这个插件,支持文件夹上传

问题四:百度云管家如何批量上传文件 1、可以把这些文件保存到一个文件夹里,选中文件夹直接上传。

2、把这些文件打包后上传。

3、可以同时选择多个文件上传。

4、可以直接拖动文件或文件夹到云管家界面中。

问题五:怎样把电脑里批量照片上传到百度云 1:首先把需要上传的图片保存在一个文件夹当中

2:然后打开百度云网页,找到网盘

3:然后上传,选择上传文件夹

4:然后找到之前保存照片的文件夹

5:选择之后点击确定

6:然后就可以看到在网盘首页多出了一个文件夹

最后由于网盘限制,一次只能上传300个,如果数量超过300,可以多创建几个,分开上传。

问题六:手机上百度云如何上传文件夹,或者批量上传? 批量上传在百度云里上传按钮就可以做到

但文件夹上传别的我不知道 es文件浏览器勾选文件夹选项有 分享―单击百度云图标 估计你的也行还有

问题七:百度云怎么上传批量分享视频 文件数量不超过100个,文件里没有被封的资源(你懂的,)

删除里边被系统封的视频后再传

问题八:iphone6如何批量上传照片到百度云 百度云直接相册备份就可以了,全部传

问题九:怎样向百度云批量传送自已的相片

问题十:如何批量上传文件夹里的照片到百度网盘 百度网盘批量上传多个文件方法点击上传按钮。在d出的选择文件窗口按住Ctrl键再单击文件,或者按住Shift键选择连续的多个文件。(参考:jingyan.baidu/...5)

你也可以直接拖拽文件到页面上。在第一步的菜单选择上传文件夹,直接选择要上传的整个文件夹即可。


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/tougao/11436970.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-16
下一篇 2023-05-16

发表评论

登录后才能评论

评论列表(0条)

保存