<!-- 参数说明
|
* extensions 文件扩展名(不加.)
|
* fileSizeLimit 总文件大小(Byte)
|
* multiple 是否支持多选
|
* img 上传图片选项 {flag是否是图片上传,preview是否预览图片,width预览图片宽度,height预览图片高度}
|
* fileList 文件列表
|
-->
|
[#macro newupload id="picker" extensions="xls,xlsx,ppt,pptx,doc,docx,txt,pdf,7z,7Z,rar,zip,gif,jpg,jpeg,png,vsd,mpp" fileSizeLimit="52428800" multiple="false" xszgflag="" allowTypes="*"
|
img="{'flag':'false','preview':'false','width':'100','height':'100'}" values=[] type="blank"
|
imgPath="" zippackage="false" xszgpackage="false"]
|
[#assign img_json=img?eval]
|
|
<script type="text/javascript" src="${common_static}/static/plugins/webupload/webuploader.js"></script>
|
<link rel="stylesheet" type="text/css" href="${common_static}/static/plugins/webupload/webuploader.css"/>
|
<style>
|
</style>
|
|
<ul id="fileList${id}" class="file_list">
|
<input id="${id}" name="${id}" type="hidden" class="upload" [#if fileList??&&fileList?size>0]value="true"[#else][#if imgPath!=""]value="${imgPath}"[#else]value=""[/#if]value=""[/#if] />
|
[#if values??&&values?size>0]
|
[#list values as d]
|
<li>
|
<input type="hidden" name="FILE_ID" value="${d.ID}" />
|
<input type="hidden" name="EXT_NAME" value="${d.FILE_FORMAT}" />
|
<input type="hidden" name="FIELD_NAME" value="${d.FIELD_NAME}" />
|
<input type="hidden" name="FILE_PATH" value="${d.FILE_PATH}" />
|
<input type="hidden" name="FILE_SIZE" value="${d.FILE_SIZE}" />
|
<input type="hidden" name="FILE_NAME" value="${d.FILE_NAME}" />
|
<span><a href="${base+d.FILE_PATH}" target="_blank" title="${d.FILE_NAME}">${left(d.FILE_NAME,30)}</a></span>
|
<a class="file_del blue_txt">删除</a>
|
</li>
|
[/#list]
|
[/#if]
|
</ul>
|
[#--<div id="p_${id}">附件上传</div>
|
<div id="${id}Tip" style="display:inline-block;"></div>--]
|
<script type="text/javascript">
|
var uploader${id};
|
$(function() {
|
uploader${id} = WebUploader.create({
|
swf : '${common_static}/static/plugins/webupload/Uploader.swf', // swf文件路径
|
server : '${base}/interface/fileupload/upload.html',// 上传压缩包。
|
pick : {
|
id : ".file_uploader",
|
multiple : ${multiple}
|
},
|
accept : {
|
extensions: '${extensions}'
|
},
|
fileSizeLimit : ${fileSizeLimit}, //总文件大小限制
|
auto : true,//是否自动上传
|
resize : false, // 不压缩image
|
chunked : true, // 开启分片上传
|
duplicate : true
|
});
|
|
uploader${id}.on( 'fileQueued', function( file ) {
|
[#if multiple+""=="false"]
|
$("#fileList${id} li").remove();
|
[/#if]
|
var $li = $('<li id="'+file.id+'">'+
|
'<span><a target="_blank">'+file.name+'</a></span>'+
|
'<div class="slide" style="width:100px;" ><div class="progress slidecon"></div></div>'+
|
' <a class="file_del blue_txt">删除</a>'+
|
'</li>');
|
$("#fileList${id}").append( $li );
|
$("#${id}").val("true");
|
});
|
|
// 文件上传过程中创建进度条实时显示。
|
uploader${id}.on( 'uploadProgress', function( file, percentage ) {
|
$("#"+file.id).find(".progress").width(percentage * 100);
|
});
|
|
//上传成功,回显地址和文件名
|
uploader${id}.on( 'uploadSuccess', function( file , response ) {
|
$input=$('<input type="hidden" name="FILE_ID" value="" />' +
|
'<input type="hidden" name="EXT_NAME" value="'+response.EXT_NAME+'" />' +
|
'<input type="hidden" name="FIELD_NAME" value="'+response.FIELD_NAME+'" />' +
|
'<input type="hidden" name="FILE_PATH" value="'+response.FILE_PATH+'" />' +
|
'<input type="hidden" name="FILE_SIZE" value="'+response.FILE_SIZE+'" />' +
|
'<input type="hidden" name="FILE_NAME" value="'+response.FILE_NAME+'" />' +
|
'<input type="hidden" name="FILE_NOTE" value="" />' +
|
'<input type="hidden" name="fileType" value="${type}" />'
|
);
|
$("#"+file.id).append($input);
|
});
|
|
//上传错误
|
uploader${id}.on( 'uploadError', function( file , reason ) {
|
$("#"+file.id).find("a:last").after(' <span>上传出错</span>');
|
});
|
|
//无论上传是否成功 ,取消进度条显示
|
uploader${id}.on( 'uploadComplete', function( file ) {
|
$( '#'+file.id ).find('.progress').parent().fadeOut();
|
});
|
uploader${id}.on("error",function (type){
|
if (type=="Q_TYPE_DENIED"){
|
popupTips("文件格式不支持或文件为空文件");
|
}else if(type=="F_EXCEED_SIZE"){
|
popupTips("文件大小超限");
|
}
|
});
|
//通用错误
|
uploader${id}.on( 'uploadComplete', function( file ) {
|
$( '#'+file.id ).find('.progress').parent().fadeOut();
|
});
|
|
//删除文件
|
$(".file_del").live('click',function(){
|
var $parent = $(this).parent();
|
//如果文件上传中,从上传队列中移除
|
if($parent.find("input[name=filePath]").lenght<=0){
|
uploader${id}.removeFile( $parent.attr("id"), true);
|
}
|
$parent.remove();
|
if($("#fileList${id}").find("li").length<=0){
|
$("#${id}").val("");
|
}
|
})
|
})
|
</script>
|
[/#macro]
|