多檔案上傳uploadify.v2.1.0使用總結
這裡只講一些問題的解決
1.如何解決中文字亂碼
使用屬性buttonImg將flash檔案設定為圖片,再使用div當背景
'buttonImg': '../JS_Upload/mutiImport.png',
<td colspan="5" align="left"><div style="background:url(../JS_Upload/mutiImport.png); width:110px;height:23px;"><input type="file" name="uploadify" id="uploadify" accept="image/jpeg" /></div></td>
2.介面顯示的時候flash載入很慢
解決:
這個使用一個div將div的背景設定為buttonImg一樣的圖片背景就行了
<div style="background:url(../JS_Upload/mutiImport.png); width:110px;height:23px;">
<input type="file" name="uploadify" id="uploadify" accept="image/jpeg" /></div>
效果:
3.後臺接收中文引數的時候會亂碼
解決:
在ashx處理前將編碼轉換為utf-8
context.Request.ContentEncoding = Encoding.GetEncoding("UTF-8"); context.Response.ContentEncoding = Encoding.GetEncoding("UTF-8");
4.一次性上傳多個檔案 但是如果部分成功部分失敗 想匯出成excel應該怎麼做?
提供一種思路:
由於此控制元件每上一次就會自動呼叫一次後臺處理方法,需要在後臺先把錯誤資訊拼接到前臺隱藏控制元件裡
然後在onAllComplete方法裡把錯誤資訊拼到form表單裡 最後提交form表單到達處理頁面,由處理頁面將錯誤資訊匯出excel
需要注意的是,提交表單的時候最好使用iframe,不然介面條件會被重新整理掉
$("#uploadify").uploadify({
'uploader': '../JS_Upload/uploadify.swf',
'script': ' [email protected]' + $(HEAD_STR + "HF_E_COMMERCE_CODE").val() + "@" + $(HEAD_STR + "HF_LOGIN_USERNAME").val(),
'cancelImg': '../JS_Upload/cancel.png',
'folder': 'UploadFileTemp',
'queueID': 'fileQueue',
'auto': true,
'multi': true,
'wmode':'transparent',
'height':25,
'width': 130,
'buttonImg': '../JS_Upload/mutiImport.png',
//'buttonText': '瀏覽', //按鈕上的文字
'queueSizeLimit': <%=SFDZ_MAX_UPLOADED_COUNT%>, //上傳佇列的最大長度
// 'sizeLimit': 1024 * 200, //最大200KB
'fileExt': '*.jpg',
'fileDesc': '請選擇jpg格式',
'simUploadLimit': '1', //一次同步上傳的檔案數目
'onAllComplete': function(event, uploadObj) //多個上傳
{
//alert("上傳完成!");
document.getElementById("uploadForm").submit();
clearErrorMsg();
hiddenLoadingDiv();
},
'onQueueFull': function(event, queueSizeLimit) {
//如果超過上傳佇列的最大長度 取消上傳
$('#uploadify').uploadifyClearQueue();
},
'onProgress': function(event, ID, fileObj, data) {
showLoadingDiv(); //鎖屏
},
'onComplete': function(event, ID, fileObj, response, data) //單個上傳
{
var obj = eval("(" + response + ")");
//alert(obj.error_code);
//錯誤程式碼 100檔案大小不能為0
// 102 檔案不能超過xx
// 103檔名不正確
// 110 檔案上傳失敗
// 120檔案上傳成功
// 105 該訂單不屬於當前電商
var hid_error_code_100 = $("#hid_error_code_100").val();
var hid_error_code_102 = $("#hid_error_code_102").val();
var hid_error_code_103 = $("#hid_error_code_103").val();
var hid_error_code_105 = $("#hid_error_code_105").val();
var hid_error_code_110 = $("#hid_error_code_110").val();
switch (obj.error_code) {
case "100":
//alert(obj.error_msg);
//alert(hid_error_code_100);
if (!checkIsNull(obj.error_msg)) {
$("#hid_error_code_100").val(hid_error_code_100 + obj.error_msg + "、");
}
break;
case "102":
if (!checkIsNull(obj.error_msg)) {
$("#hid_error_code_102").val(hid_error_code_102 + obj.error_msg + "、");
}
break;
case "103":
if (!checkIsNull(obj.error_msg)) {
$("#hid_error_code_103").val(hid_error_code_103 + obj.error_msg + "、");
}
break;
case "105":
if (!checkIsNull(obj.error_msg)) {
$("#hid_error_code_105").val(hid_error_code_105 + obj.error_msg + "、");
}
break;
case "110":
if (!checkIsNull(obj.error_msg)) {
$("#hid_error_code_110").val(hid_error_code_110 + obj.error_msg + "、");
}
break;
default:
break;
}
}
});
});
<form action="Frm_Action_SFDZ.aspx?DoType=ExportHWC_SFDZ_ERROR" name="uploadForm" id="uploadForm" method="post" target="Action_frame">
<input id="hid_error_code_100" name="hid_error_code_100" type="hidden" value="" />
<input id="hid_error_code_102" name="hid_error_code_102" type="hidden" value="" />
<input id="hid_error_code_103" name="hid_error_code_103" type="hidden" value="" />
<input id="hid_error_code_110" name="hid_error_code_110" type="hidden" value="" />
<input id="hid_error_code_105" name="hid_error_code_105" type="hidden" value="" />
</form>
<iframe id="Action_frame" name="Action_frame" style="display:none;"></iframe>
5.如果新增一個帶滾動條的效果
提供一種思路:
在開始執行上傳的時候開啟一個層遮住,在onAllComplete執行完畢時關閉層
'onProgress': function(event, ID, fileObj, data) {
showLoadingDiv(); //鎖屏
},
'onAllComplete': function(event, uploadObj) //多個上傳
{
//alert("上傳完成!");
document.getElementById("uploadForm").submit();
clearErrorMsg();
hiddenLoadingDiv();
},
6.如何在超過一次性上傳個數限制的時候取消上傳
提供一種思路:
在onQueueFull方法裡呼叫取消方法即可
'onQueueFull': function(event, queueSizeLimit) {
//如果超過上傳佇列的最大長度 取消上傳
$('#uploadify').uploadifyClearQueue();
},
相關推薦
多檔案上傳uploadify.v2.1.0使用總結
這裡只講一些問題的解決 1.如何解決中文字亂碼 使用屬性buttonImg將flash檔案設定為圖片,再使用div當背景 'buttonImg': '../JS_Upload/mutiImport.png', <td colspan="5" align="lef
Java Servlet3.0使用getPart/getParts實現單檔案和多檔案上傳
一、使用工具: (1)Firefox瀏覽器 (2)Eclipse 二、實現單檔案上傳 (1)Servlet 原始碼 package com.servlet; import java.io.IOExce
2018-11-13 關於uploadify多檔案上傳問題
一、上傳檔案 1.HTML程式碼: <tr> <td align="right"> 上傳檔案: </td> <td align="left" colspan="1">
Jquery外掛(uploadify外掛實現多檔案上傳)
前臺HTML程式碼: <div class="control-group" id="title-control-group"> <label class="control-label"><?=_('關於圖片(*)')?></lab
struts 1.x多檔案上傳
<html:form action="/CFIS_AlbumAddPhotos.do" enctype="multipart/form-data" method="post"> image1 : <html:file propert
uploadify+java實現多檔案上傳和預覽
1、下載uploadify外掛 2、index.html <!DOCTYPE html> <html lang="en"> <head> <@head/> <script src="<@path/>/js
Retrofit 2.0 單檔案、多檔案上傳
public void doPost(HttpServletRequest request, HttpServletResponse response)throws ServletException, IOException {System.out.println("有檔案提交");// 設定respons
Spring MVC - MultipartFile實現檔案上傳(單檔案與多檔案上傳)
前提:引入jar包。 <dependency>
相容ie8的多檔案上傳
在HTML5中,表單元素有一個新的屬性multiple,可實現多選功能。 <input type="file" multiple>這樣就可以實現多檔案上傳,但是此方法不相容ie8等低版本瀏覽器。所以專案中我使用的是百度的WebUpload外掛,此外掛在ie中底層使用flas
用Ajax提交多檔案上傳表單
function test(){ var form = new FormData(document.getElementById(“表單id”)); $ .ajax({ url:“表單提交路徑”, &nb
SpringBoot多檔案上傳和檔案下載
1、前端的form表單: <form id="form" action="controller層的多檔案上傳方法訪問路徑" method="post" enctype="multipart/form-data"> <input type="file" n
第30講 .struts2多檔案上傳
1在專案中,HeadFirstStruts2chapter08,新建filesUpload.jsp檔案 <%@ page language="java" contentType="text/html; charset=UTF-8" &nbs
TP5實現多檔案上傳及展示
view層上傳: <!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8"> <title>Title</title></head><body&
webuploader實現多檔案上傳
問題: 1: 上傳失敗,不知道怎麼在服務端寫返回值? 2: 做個多檔案上傳怎麼辦? 1:上傳失敗,不知道怎麼在服務端寫返回值? (1):首先在初始化Web Uploader 的方法寫上 server: 'http://localho
在SSM框架中使用AJAX實現多檔案上傳
今天來學習一下在SSM框架中使用ajax實現檔案的上傳。 1.首先我們需要一個搭建好的SSM框架專案,這個在這篇文章裡不是重點,自行先搭建好需要的專案。 這裡我是用的jsp頁面來和後臺介面關聯,在jsp檔案中我們需要一個form表單,請求方法為POST,enctype="mu
fastDFS+LibreOffice多檔案上傳(二)前端部分:修改上傳按鈕樣式和上傳後在頁面顯示
一:修改上傳按鈕樣式 原來的<input type="file"/>太醜了,所以我自己設定了樣式。方法:在<input type="file"/>上面加一層div,遮住它。 .upload{ padding: 0px 25px; line-height
Spring Boot 單檔案,多檔案上傳,以及將檔案寫入響應中
單檔案上傳 配置檔案設定 @Component public class MultipartConfig { @Bean public MultipartConfigElement multipartConfigElement(){ Multipa
fastDFS+LibreOffice多檔案上傳(二)後端部分:檔案資訊轉json字串儲存資料庫(Gson和org.json兩種方式)
需要注意的地方: 1)如果你複製我的程式碼到你的程式上報錯,可以看看我第一篇文章實體類跟配置檔案的設定:https://blog.csdn.net/qq_36688143/article/details/84162924 第二篇檔案上傳前端頁面的程式碼: https://blog.c
Java架構-Spring mvc+oss儲存+fileupload多檔案上傳實現SSO單點登入模板管理
之前給大家介紹了sso的相關知識點和整合方案,考慮到每個系統所屬行業的不同,這邊針對於不同行業做了一些統一的sso單點登入介面模板,使用fileupload多檔案上傳+OSS阿里雲端儲存方案。 1. 阿里雲oss儲存Utils Java程式碼 2. 阿里雲配
SWFUpload多檔案上傳使用指南
SWFUpload是一個flash和js相結合而成的檔案上傳外掛,其功能非常強大。以前在專案中用過幾次,但它的配置引數太多了,用過後就忘記怎麼用了,到以後要用時又得到官網上看它的文件,真是太煩了。所以索性就把它的用法記錄下來,也方便英語拙計的同學檢視,利人利己,一勞永逸。(ps:SWFUpload早就不再更新