亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 編程 > JavaScript > 正文

Uploadify上傳文件方法

2019-11-20 10:23:18
字體:
來源:轉載
供稿:網友

Uploadify是JQuery的一個上傳插件,實現的效果非常不錯,帶進度顯示。不過官方提供的實例時php版本的,本文將詳細介紹Uploadify在Aspnet中的使用,您也可以點擊下面的鏈接進行演示或下載。

先給大家展示下效果圖:

修改:

報找不到uploadify-cancel.png文件。找到uploadify.css,找到.uploadify-queue-item .cancel a {,修改文件的路徑。
好多人都說,在chrome、Firefox上使用uploadify的時候獲取不到session導致上傳出錯。需要手工將session id方法附加參數中。但是我這里并沒有這么做,并且在chrome、Firefox上傳沒問題,不知道為什么,也許是因為我用的最新版的原因吧。

要點:

uploadify的js配置已經比較全面,在實際使用的時候可以適當的刪減一些方法和屬性。

一般情況下的單文件上傳只考慮onSelect、onUploadError和onUploadSuccess即可。

如果是多文件上傳,那么在單文件上傳的基礎上再加上對整個隊列的監聽onQueueComplete。

開始上傳所有文件:$('#file_upload').uploadify('upload', '*');

取消上傳:$('#file_upload').uploadify('cancel', parm);

parm為空:取消上傳第一個文件。

parm為'*':取消所有的上傳文件。

parm為file id:取消該file id對應的文件。

修改附加的一些變量:$('#file_upload').uploadify("settings","formData",{"name1":"中文name","parm1":"修改后的參數"});參數為json,如果該json中的某個變量已經有了,那么覆蓋該屬性,如果沒有,那么追加該屬性。
服務端設置編碼為:upload.setHeaderEncoding("UTF-8");,這樣解析的文件名稱為正常中文。但是解析的附加變量中文亂碼,這里做一次轉碼(總感覺轉碼比較low,不知道是哪里配置的不對)。new String(item.getString().getBytes("iso8859-1"),"utf-8")

服務端最后返回文件保存路徑(這里可以隨便定義返回內容)。

步驟:

配置uploadify

<%@ page language="java" contentType="text/html;charset=UTF-8" pageEncoding="UTF-8"%><%String path = request.getContextPath();%><%String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";%><!DOCTYPE html><html lang="en"><head><meta charset="UTF-8"><base href="<%=basePath %>"><title></title><link rel="stylesheet" type="text/css" href="jquery-easyui-1.4.3/themes/default/easyui.css"><link rel="stylesheet" type="text/css" href="jquery-easyui-1.4.3/themes/icon.css"><script type="text/javascript" src="jquery-easyui-1.4.3/jquery.min.js"></script><script type="text/javascript" src="jquery-easyui-1.4.3/jquery.easyui.min.js"></script><script type="text/javascript" src="uploadify/uploadify/jquery.uploadify.min.js"></script><link rel="stylesheet" type="text/css" href="uploadify/uploadify/uploadify.css" /></head><script>$(function(){$(function() {$(function() {$('#file_upload').uploadify({'uploader' : '<%=basePath%>/UploadServlet',//服務端地址'swf' : 'uploadify/uploadify/uploadify.swf','buttonImage' : 'uploadify/uploadify/img/chooseFile.jpg',//重載按鈕圖片'buttonClass' : 'some-class',//重載按鈕樣式'height':19,//按鈕寬度和高度'width':76,'queueID' : 'file_queue',//顯示文件隊列的一個div,在頁面定義'formData' : {'parm1':'參數1','year':'2016'},//附加參數,可以在upload參數中更改'buttonText':'選擇文件',//按鈕顯示文字,如果有圖片的話,會被圖片擋住'fileSizeLimit':'1MB',//文件最大'auto':false,//自動提交'fileTypeExts' : '*.gif; *.jpg; *.png',//文件類型'fileTypeDesc' : '只能上傳圖片',//選擇文件的時候的提示信息'multi' : true,//多選'queueSizeLimit' : 3,//隊列中文件的個數'onSelect' : function(file) {console.log(file);alert("選擇文件:" + file.name + "/n類型="+file.type+"/n大小="+file.size);if(file.size>1024000){//文件太大,取消上傳該文件alert("文件大小超過限制!");$('#file_upload').uploadify('cancel',file.id);}},'onUploadSuccess' : function(file, data, response) {alert('每個文件上傳成功后觸發 ' + file.name + ' was successfully uploaded with a response of ' + response + ':' + data);},'onUploadComplete' : function(file) {alert('每個文件上傳完成,無論對錯都觸發! ' + file.name + ' finished processing.');},'onUploadError' : function(file, errorCode, errorMsg, errorString) {alert('上傳出錯 ' + file.name + ' could not be uploaded: ' + errorString);},'onQueueComplete':function(queueData){alert("隊列中的所有文件上傳完成后觸發。/n"+queueData.uploadsSuccessful+'/n'+queueData.uploadsErrored)},});});});});function upload(){$('#file_upload').uploadify("settings","formData",{"name1":"中文name","parm1":"修改后的參數"});$('#file_upload').uploadify('upload', '*');//上傳所有文件}function cancel(){$('#file_upload').uploadify('cancel', '*');//取消所有文件}function destroy(){alert("取消upload上傳,變成原來樣式!");$('#file_upload').uploadify('destroy');//destory}</script><body><div class="easyui-panel" title="說明" style="margin-bottom:15px"></div><div class="easyui-panel" style="text-align:center;margin-bottom:15px"><a href="javascript:void(0)" class="easyui-linkbutton" onclick="upload()">開始上傳</a><a href="javascript:void(0)" class="easyui-linkbutton" onclick="cancel()">取消上傳</a><a href="javascript:void(0)" class="easyui-linkbutton" onclick="destroy()">destroy</a><input type="file" name="file_upload" id="file_upload" /><div id="file_queue" style="width:400px;height:10px;position:absolute;z-index:999"></div></div></body></html>

服務端

package com.servlet;import java.io.File;import java.io.IOException;import java.text.SimpleDateFormat;import java.util.Date;import java.util.Iterator;import java.util.List;import java.util.UUID;import javax.servlet.ServletException;import javax.servlet.annotation.WebServlet;import javax.servlet.http.HttpServlet;import javax.servlet.http.HttpServletRequest;import javax.servlet.http.HttpServletResponse;import org.apache.commons.fileupload.FileItem;import org.apache.commons.fileupload.FileUploadException;import org.apache.commons.fileupload.disk.DiskFileItemFactory;import org.apache.commons.fileupload.servlet.ServletFileUpload;/*** Servlet implementation class UploadServlet*/@WebServlet(name="UploadServlet",urlPatterns="/UploadServlet")public class UploadServlet extends HttpServlet {private static final long serialVersionUID = -6483558339095298703L;/*** @see HttpServlet#HttpServlet()*/public UploadServlet() {super();// TODO Auto-generated constructor stub}/*** @see HttpServlet#doGet(HttpServletRequest request, HttpServletResponse response)*/protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {// TODO Auto-generated method stubresponse.getWriter().append("Served at: ").append(request.getContextPath());}/*** @see HttpServlet#doPost(HttpServletRequest request, HttpServletResponse response)*/protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {System.out.println("獲取session,可以根據這個session進行一些其他的判斷" + request.getSession().getId());SimpleDateFormat sdf=new SimpleDateFormat("yyyyMMdd");String remotePath = File.separator + "download" + File.separator + sdf.format(new Date()) + File.separator;String savePath = remotePath;File dfile = new File(savePath);if (!dfile.exists()) {dfile.mkdirs();}DiskFileItemFactory fac = new DiskFileItemFactory();ServletFileUpload upload = new ServletFileUpload(fac);upload.setHeaderEncoding("UTF-8");List<FileItem> fileList = null;try {fileList = upload.parseRequest(request);} catch (FileUploadException ex) {return;}Iterator<FileItem> it = fileList.iterator();String name = "";String extName = "";while (it.hasNext()) {FileItem item = it.next();if (!item.isFormField()) {name = item.getName();long size = item.getSize();String type = item.getContentType();System.out.println("文件=" + name + " " + size + " " + type);if (name == null || name.trim().equals("")) {continue;}// 擴展名格式:if (name.lastIndexOf(".") >= 0) {extName = name.substring(name.lastIndexOf("."));}File file = null;do {// 生成文件名:name = UUID.randomUUID().toString();file = new File(savePath + name + extName);} while (file.exists());File saveFile = new File(savePath + name + extName);try {item.write(saveFile);} catch (Exception e) {e.printStackTrace();}}else if(item.isFormField()){System.out.println("表單內容:" + item.getFieldName() + "=" + new String(item.getString().getBytes("iso8859-1"),"utf-8"));}}String requestPath = remotePath + name + extName;request.getSession().setAttribute(requestPath, requestPath);response.getWriter().write(savePath + name + extName);}}

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
精品国产依人香蕉在线精品| 欧美激情一级欧美精品| 亚洲毛片在线观看| 亚洲国产高清福利视频| 亚洲色图五月天| 欧美国产欧美亚洲国产日韩mv天天看完整| 国内精品久久久久| 日韩av日韩在线观看| 一本一本久久a久久精品综合小说| 欧美精品一二区| 国产精品18久久久久久首页狼| 91精品国产综合久久久久久久久| 亚洲第一视频在线观看| 久久黄色av网站| 日本精品在线视频| 欧美激情二区三区| 成人精品在线视频| 亚洲国产另类 国产精品国产免费| 浅井舞香一区二区| 日韩69视频在线观看| 91高潮在线观看| 久久av红桃一区二区小说| 久久久免费电影| 日韩欧美极品在线观看| 国产精品自产拍在线观看中文| 国产精品999999| 亚洲成人网av| 亚洲缚视频在线观看| 国内外成人免费激情在线视频网站| 国产丝袜一区视频在线观看| 欧美精品成人91久久久久久久| 一区二区欧美日韩视频| 亚洲天堂成人在线视频| 精品中文字幕在线观看| 久久久国产精品免费| 成人精品在线视频| 日本精品久久久久影院| 色噜噜狠狠狠综合曰曰曰| 欧洲成人午夜免费大片| 国产精品黄色影片导航在线观看| 日韩国产高清污视频在线观看| 亚洲精品国产品国语在线| 3344国产精品免费看| 成人国产精品免费视频| 亚洲天堂免费在线| 精品久久久久久久久久久久久| 中文字幕九色91在线| 亚洲精品久久久久久久久久久| 国产精品v日韩精品| 亚洲欧美在线一区二区| 91亚洲va在线va天堂va国| 亚洲午夜未删减在线观看| 欧美精品九九久久| 久久99精品久久久久久青青91| 日韩精品在线观看一区二区| 人人澡人人澡人人看欧美| 亚洲自拍偷拍区| 91国自产精品中文字幕亚洲| 国产一区在线播放| 福利视频导航一区| 欧美日韩第一页| 国产精品高清网站| 欧美一区二区大胆人体摄影专业网站| www.久久草.com| 国产一区欧美二区三区| 精品亚洲一区二区三区| 黄网站色欧美视频| 欧美美最猛性xxxxxx| 欧美精品www在线观看| 日韩精品在线电影| 久久久日本电影| 日韩在线国产精品| 亚洲欧美另类中文字幕| 欧美一区二区三区……| 伊人精品在线观看| 曰本色欧美视频在线| 亚洲视频专区在线| 欧美成人中文字幕在线| 日韩精品免费在线观看| 91久久精品国产91久久| 亚洲一区二区三区四区视频| 国产日产欧美a一级在线| 日韩欧美aaa| 18久久久久久| 久久久亚洲影院你懂的| 欧美电影免费播放| 亚洲天堂av电影| 国产精品黄色影片导航在线观看| 国产精品久久久久久久久久尿| 国产一区视频在线| 欧美激情一级二级| 日韩视频亚洲视频| 国产精品伦子伦免费视频| 久久精品国亚洲| 日韩中文字幕在线精品| 亚洲国产成人久久| 成人有码在线播放| 亚洲精品小视频| 欧美成aaa人片免费看| 国产亚洲欧美另类中文| 国产视频自拍一区| 国产精品久久久精品| 国语自产精品视频在线看一大j8| 2021久久精品国产99国产精品| 欧美日韩国产成人| 欧美日韩一区二区免费在线观看| 欧美香蕉大胸在线视频观看| 亚洲精品一区在线观看香蕉| 欧美美女操人视频| 日韩成人中文字幕在线观看| 欧美高清性猛交| 欧美亚洲成人xxx| 欧美黄色成人网| 欧美天天综合色影久久精品| 国产亚洲福利一区| 久久久久日韩精品久久久男男| 日韩在线视频观看正片免费网站| 91干在线观看| 国产女人18毛片水18精品| 久久国产精品亚洲| 美女少妇精品视频| 国产午夜精品久久久| 久久电影一区二区| 日韩在线视频观看正片免费网站| 欧美理论电影在线观看| 久久久久久噜噜噜久久久精品| 欧美在线www| 国产精品入口福利| 久久黄色av网站| 欧美国产日韩一区二区三区| 国产精品白丝jk喷水视频一区| 日韩av一区二区在线| 亚洲国产精品成人va在线观看| 国产一区二区黄| 91人人爽人人爽人人精88v| 亚洲欧美日韩天堂一区二区| 国产噜噜噜噜久久久久久久久| 精品成人久久av| 日韩中文av在线| 久久久久久久亚洲精品| 尤物tv国产一区| 成人做爰www免费看视频网站| 国产午夜精品全部视频在线播放| 亚洲最新av在线| 91高清免费视频| 国产欧美日韩中文| 8x海外华人永久免费日韩内陆视频| 日韩中文字幕在线观看| 亚洲欧美日韩一区在线| 亚洲免费精彩视频| 欧美另类第一页| 国产不卡av在线免费观看| 欧美性xxxxx极品| 国产精品成人av在线| 亚洲a∨日韩av高清在线观看| 国产在线视频不卡| 亚洲qvod图片区电影| 亚洲国产精品高清久久久| 亚洲精品一区二区久| 国产精品久久久久久av下载红粉| 成人国产精品久久久| 久久精品免费播放| 日韩亚洲成人av在线| 欧美成人四级hd版|