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

struts2 uploadify 多文件上传

阅读更多

在项目中用到了uploadify来上传jar包文件,在其官网上只有php和ASP的实例。在网上找了很多,都不是很满意,下面就共享一下基于项目做的一个多文件上传:


 

<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>
<%
String path = request.getContextPath();
String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";
%>
<%@ taglib prefix="s" uri="/struts-tags" %>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
  <head>
    <base href="<%=basePath%>">
    
    <title>插件上传</title>
    <script type="text/javascript" src="js/jquery-1.7.2.min.js"></script>
    <script type="text/javascript" src="js/jquery.easyui.min.js"></script>
    <script type="text/javascript" src="js/swfobject.js"></script>
	<script type="text/javascript" src="<%=basePath%>js/jquery.uploadify.v2.1.0.min.js"></script>
	<meta http-equiv="pragma" content="no-cache">
	<meta http-equiv="cache-control" content="no-cache">
	<meta http-equiv="expires" content="0">    
	<meta http-equiv="keywords" content="keyword1,keyword2,keyword3">
	<meta http-equiv="description" content="This is my page">
	<!--
	<link rel="stylesheet" type="text/css" href="styles.css">
	-->
		
  <link rel="stylesheet" href="style/default.css" type="text/css"></link>
  <link rel="stylesheet" href="style/uploadify.css" type="text/css"></link>
  <link rel="stylesheet" type="text/css" href="style/easyui.css">
  <script type="text/javascript">
$(document).ready(function() {
	var maxBytes = 1024 * 10 * 1024;//设置上传最大值10MB
	$("#jar").uploadify({
		'uploader'       : 'js/uploadify.swf', // 上传文件的swf
		'script'         : '****.action',//传到后台处理
		'cancelImg'      : 'style/images/cancel.png',
		'folder'         : 'temp',//这个没啥用
		'fileDataName'	 : 'jar',//这个和下面的 浏览按钮的name保持一致
		'queueID'        : 'fileQueue',
		'fileDesc'		 : 'All Files Jar', //这个是浏览框显示的字
		'sizeLimit'		 :maxBytes,//最大字节限制
		'queueSizeLimit' : 5,//这个是一次最多能上传几个文件
        'fileExt'	 	 : '*.jar',//限制类型
		'auto'           : false,
		'multi'          : true,
		'displayData'	 : 'percentage',显示百分比
		'buttonText'	 : '浏览',
		'onComplete'	 : function(event,queueID,fileObj,response,data) {//完成的函数
		 	return false;
		 },
           'onError':function(event, ID, fileObj, errorObj){//出错的提示信息
           	   if(maxBytes < fileObj.size){
           	   		$.messager.alert('提示','['+fileObj.name+']太大,超过了最大限制,最大限制为 10MB ','info');
           	   		return false;
           	   }
           	   return true;
           },
           'onQueueFull':function(event,queueSizeLimit){//一次上传到达上限之后提示
           	  $.messager.alert('提示','一次最多只能上传 [' + queueSizeLimit + '] 个jar 包','info');
           	   return false;
           }
	});
});
</script>
  </head>
  
  <body>
 <div id="fileQueue"></div>
<input type="file" name="jar" id="jar" />   
       
<a class="easyui-linkbutton" href="javascript:$('#jar').uploadifyUpload();"  >开始上传</a>  
<a class="easyui-linkbutton" href="javascript:$('#jar').uploadifyClearQueue();"  >取消上传队列</a> <br>  <br>  

  </body>
</html>

对于官网发布的这个uploadify.swf在上传测试时发现,清空队列,和删除上传的文件只能在上传前有效,

在上传完成后在点击清空上传队列或者删除已上传的队列,则会报错,这还是需要改进的地方;不知道其他人有没有这个问题

 

分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics