1. 程式人生 > >jQuery 多檔案上傳

jQuery 多檔案上傳

第二篇——控制元件

這一篇將會使用Jquery替代HTML5的上傳控制元件,並增加檔案資訊展示和上傳進度條。

首先我們需要下載JqueryUploadify這一個控制元件包(注2提供下載連結地址),裡面包含以下幾個引用:

<script src="/js/jquery-1.3.2.min.js" type="text/javascript"></script>  
<script src="/js/jquery.uploadify.v2.1.0.js" type="text/javascript"></script>  
<script src="/js/jquery.uploadify.v2.1.0.min.js"
type="text/javascript">
</script> <script src="/js/swfobject.js" type="text/javascript"></script> <link href="/css/uploadify.css" rel="stylesheet" type="text/css" />
  • 1
  • 2
  • 3
  • 4
  • 5

在前臺頁面中寫入form表單和相應的按鈕

<form id="form1" runat="server">  
    <div id="fileQueue">         
    </div
>
<div> <p> <input type="file" name="uploadify" id="uploadify"/> <input id="Button1" type="button" value="上傳" onclick="javascript: $('#uploadify').uploadifyUpload()" /> <input id="Button2" type="button"
value="取消" onclick="javascript: $('#uploadify').uploadifyClearQueue()" />
</p> </div> </form>
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11

然後寫一下uploadify的JS:

<script type="text/javascript">  
       $(document).ready(function () {  

           $("#uploadify").uploadify({  
               'uploader': 'image/uploadify.swf',  //uploadify.swf檔案的相對路徑,該swf檔案是一個帶有文字BROWSE的按鈕,點選後淡出開啟檔案對話方塊                
               'script': 'Handler1.ashx',//    script :  後臺處理程式的相對路徑  
               'cancelImg': 'image/cancel.png',  
               'buttenText': '請選擇檔案',//瀏覽按鈕的文字,預設值:BROWSE。  
               'sizeLimit':999999999,//檔案大小顯示  
               'floder': 'Uploader',//上傳檔案存放的目錄  
               'queueID': 'fileQueue',//檔案佇列的ID,該ID與存放檔案佇列的div的ID一致  
               'queueSizeLimit': 120,//上傳檔案個數限制  
               'progressData': 'speed',//上傳速度顯示  
               'auto': false,//是否自動上傳  
               'multi': true,//是否多檔案上傳  
               //'onSelect': function (e, queueId, fileObj) {  
               //    alert("唯一標識:" + queueId + "\r\n" +  
               //  "檔名:" + fileObj.name + "\r\n" +  
               //  "檔案大小:" + fileObj.size + "\r\n" +  
               //  "建立時間:" + fileObj.creationDate + "\r\n" +  
               //  "最後修改時間:" + fileObj.modificationDate + "\r\n" +  
               //  "檔案型別:" + fileObj.type);  

               //    }, 
               'onQueueComplete': function (queueData) {  
                   alert("檔案上傳成功!");                    
                   return;  
               }  

           });  
       });  
</script>
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26
  • 27
  • 28
  • 29
  • 30
  • 31
  • 32

最後後臺程式和我們第一篇使用的後臺處理是同一程式,下面是圖片展示區:

這裡寫圖片描述

這裡寫圖片描述

這裡寫圖片描述

如果報錯或者超出檔案上傳限制將會用下面的方式提示使用者

這裡寫圖片描述

CSS樣式區:

<style>
    #drop_zone {
      border: 2px dashed #BBB;
      padding: 25px 5px;
      text-align: center;
      font-size: 20pt;
      color: #BBB;
      border-radius: 5px;
    }
    #drop_zone.hovering {
      -webkit-box-shadow: inset 0px 0px 50px #BBB;
      -moz-box-shadow: inset 0px 0px 50px #BBB;
      -o-box-shadow: inset 0px 0px 50px #BBB;
      box-shadow: inset 0px 0px 50px #BBB;
    }
    .example {
      margin: 40px 25px;
      padding: 10px;
      border: 1px solid #BBB;
    }
    #description:first-line {
      margin-left: 42px;
    }
    #output_area {
      text-align: left;
    }
    #output_area li {
      margin: 10px 0;
    }
  </style>
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26
  • 27
  • 28
  • 29
  • 30

注1:運用dataTransfer物件,不僅僅能傳輸資料,還能通過dataTransfer物件確定被拖拽的元素以及作為放置目標的元素能夠接收什麼操作。

其中,通過dropEffect屬性可以知道被拖動的元素能夠執行哪種行為。這個屬性的四個值如下:

none:不能把拖動的元素放在這裡。這是除了文字框之外所有元素預設的值。

move:把拖動的元素移動到放置目標。

copy:把拖動的元素複製到放置目標。

link:放置目標會開啟拖動的元素(但拖動的元素必須是個連結,有URL地址)。

把元素拖動到放置目標上的時候,以上每一個值都會導致游標顯示為不同的符號。

相關推薦

jQuery 檔案

第二篇——控制元件這一篇將會使用Jquery替代HTML5的上傳控制元件,並增加檔案資訊展示和上傳進度條。首先我們需要下載JqueryUploadify這一個控制元件包(注2提供下載連結地址),裡面包含以下幾個引用:<script src="/js/jquery-1.3

jQuery.MultiFile 基於jQuery檔案外掛

  jQuery.MultiFile是基於jQuery的簡單(容量也很小)的外掛,可幫助使用者很容易的選擇多個檔案進行上傳管理。  下載及使用方法:[url]http://www.fyneworks.com/jquery

jquery檔案外掛 multifile的使用

aspx程式碼:<%@ Page Language="C#" AutoEventWireup="true" CodeFile="Default.aspx.cs" Inherits="_Default" %><html xmlns="http://www.w3

jQuery檔案

引入js和css樣式 <script src="jquery/1.7.1/jquery.min.js" type="text/javascript"></script> <script src="jquery.uploadify.min.js

基於jquery檔案

1、檔案上傳前臺設計 說到前臺設計,還真的有些不知道怎麼講好,還是老樣子,直接上圖來的直接,在此也說明下:本人不擅長做PS,所以很多素材(圖片)都是網上尋找的,這個上傳程式可以上傳各種檔案,至於哪些?我沒數過,我不介意你數一數,我就用簡單的圖片上傳來演示吧,附帶預覽功能。

Jquery外掛(uploadify外掛實現檔案

前臺HTML程式碼: <div class="control-group" id="title-control-group"> <label class="control-label"><?=_('關於圖片(*)')?></lab

jquery ajaxFileUpload.js外掛支援檔案的方法

ajaxFileUpload是一款基於jQuery的ajax上傳方式的檔案上傳外掛,它沒有對上傳控制元件作美化(使用原生態的上傳控制元件),只是提供了非同步上傳的功能,但用它來作非同步上傳確實很簡單和方便。下來我來說說使用步驟:      一:引入JS檔案——ajaxFil

基於ASP.NET MVC 4、WebApi、jQuery和FormData的檔案方法

通過<input type='file' />上傳檔案是網站應用系統的一個經典應用,可參考的文章較多。因為多種原因,筆者不能遠端桌面連線伺服器,只有通過網站方式上傳更新的應用系統檔案。正好五一幾天,把原來的有關構思程式設計實現,即鞏固了所學的ASP.NET MV

jQuery預覽

<!doctype html> <html> <head> <meta charset="utf-8"> <title>jQuery多圖上傳預覽</title> <script src="http://libs.baidu

相容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