JQuery fileupload外掛程式實作檔案上傳功能_jquery
道理相通,我簡單分享下在.net MVC下的實裝。
1.製作Model類別
using System; using System.Collections.Generic; using System.Linq; using System.Web; namespace RCRS.WebApp.LG.EM.Models { //---------------------------------------------------------------- /// <summary> /// Import画面用 /// </summary> //---------------------------------------------------------------- public class tmp_UploadFile { /// <summary></summary> public HttpPostedFileBase FileName { get; set; } } }
2.實裝controller裡的對應方法,我這個處理邏輯比較複雜,懶得修改了,反正就這個意思
//---------------------------------------------------------------- /// <summary> /// アップロード /// </summary> /// <returns></returns> //---------------------------------------------------------------- [HttpPost] public virtual ActionResult UploadFile() { HttpPostedFileBase uploadedFile = Request.Files["FileName"]; string message = "アップロード失敗しました。"; bool isUploaded = false; string path = ""; string dateTimeNow = DateTime.Now.ToString("yyMMdd-hhmmss"); string userName = User.Identity.GetUserName(); string uploadMsg = string.Empty; if (uploadedFile != null && uploadedFile.ContentLength != 0) { string pathForSaving = Server.MapPath("~/App_Data/Uploaded/"); try { if (BsnssBihin.IsExcel(uploadedFile.FileName)) { path = System.IO.Path.Combine(pathForSaving, dateTimeNow + "_" + uploadedFile.FileName); uploadedFile.SaveAs(path); isUploaded = BsnssBihin.UploadBihinChange(path, userName, ref uploadMsg); if (isUploaded) { message = "アップロード成功しました!" + "\n" + uploadMsg; Logger.Info("[成功]備品アップロード, " + dateTimeNow + ", " + "[" + userName + "]" + "[" + path + "]" + uploadMsg); } else { message = "アップロード失敗しました。" + "\n" + uploadMsg; Logger.Info("[失敗]備品アップロード, " + dateTimeNow + ", " + "[" + userName + "]" + "["+path + "]" + uploadMsg); } } else { message = "ファイルの形式は不正です。"; } } catch (Exception ex) { message = string.Format("失敗しました: {0}", ex.Message); Logger.Info("[失敗]備品アップロード: " + ex.Message + dateTimeNow + ", " + "[" + userName + "]" + "[" + path + "]"); } } return Json(new { isUploaded = isUploaded, message = message }, "text/html"); }
3.頁的實裝
@model RCRS.WebApp.LG.EM.Models.tmp_UploadFile <table align="center" style="margin-bottom:200px"> <tr> <td> <div style="width:470px"> <input type="text" id="tbx-file-path" value="ファイルを選択してください" readonly="readonly" /> </div> </td> <td> <div style="width: 60px"> <span class="btn btn-primary fileinput-button"> <span>選 択</span> @Html.TextBoxFor(m => m.FileName, new { id = "file-upload", type = "file", accept = "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet, application/vnd.ms-excel" }) </span> </div> </td> <td> <div style="width:60px"> <a class="btn btn-primary" href="#" id="hl-start-upload">アップロード</a> </div> </td> </tr> </table> <div id="loadingOver" class="loadingOver"></div> <div id="dvloader" class="dvloader"> <span class="label label-info" style="align-content:center"> 処理中、少々お待ちください</span><br /> <br /> <img id="loadingGif" src="../Content/img/loader.gif" alt="" /> </div> @section scripts{ @Scripts.Render("~/bundles/jquery") @Scripts.Render("~/bundles/jqueryui") @Scripts.Render("~/bundles/jqueryval") @Scripts.Render("~/bundles/common") @Scripts.Render("~/bundles/fileupload") <script type="text/javascript"> var data_upload; $(document).ready(function () { 'use strict'; $('#file-upload').fileupload({ url: '../Bihin/UploadFile', dataType: 'json', add: function (e, data) { data_upload = data; }, done: function (event, data) { if (data.result.isUploaded) { $("#tbx-file-path").val("ファイルを選択してください"); data_upload = ""; } $("#dvloader").css("display", "none"); $("#loadingOver").css("display", "none"); alert(data.result.message); }, fail: function (event, data) { data_upload = ""; if (data.files[0].error) { $("#dvloader").css("display", "none"); $("#loadingOver").css("display", "none"); alert(data.files[0].error); } } }); }); $("#hl-start-upload").on('click', function () { if (data_upload) { $("#dvloader").css("display", "block"); $("#loadingOver").css("display", "block"); data_upload.submit(); } return false; }); $("#file-upload").on('change', function () { $("#tbx-file-path").val(this.files[0].name); }); </script> }
√,就是這個樣子
還附贈了一個簡易loding的實現
貼出CSS代碼:
.dvloader { display:none; position:absolute; top:40%; left:40%; width:20%; height:20%; z-index:1001; text-align:center; font-size:1.5em; } .loadingOver { display:none; position:absolute; top:0; left:0; width:100%; height:100%; background-color:#f5f5f5; opacity:0.5; z-index:1000; }
這裡,多說一嘴:
關於input 的accept屬性,這裡只想讀入Excel,所以
application/vnd.openxmlformats-officedocument.spreadsheetml.sheet, application/vnd.ms-excel
以上就是本文的全部內容,希望對大家的學習有所幫助。

熱AI工具

Undresser.AI Undress
人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover
用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool
免費脫衣圖片

Clothoff.io
AI脫衣器

AI Hentai Generator
免費產生 AI 無盡。

熱門文章

熱工具

記事本++7.3.1
好用且免費的程式碼編輯器

SublimeText3漢化版
中文版,非常好用

禪工作室 13.0.1
強大的PHP整合開發環境

Dreamweaver CS6
視覺化網頁開發工具

SublimeText3 Mac版
神級程式碼編輯軟體(SublimeText3)

熱門話題

如何使用gRPC實作檔案上傳?建立配套服務定義,包括請求和回應訊息。在客戶端,開啟要上傳的檔案並將其分成區塊,然後透過gRPC串流傳輸到服務端。在服務端,接收文件區塊並將其儲存到文件中。服務端在文件上傳完成後發送回應,指示上傳是否成功。

答案:是,Golang提供的函數可以簡化檔案上傳處理。詳情:MultipartFile類型提供對文件元資料和內容的存取。 FormFile函數從表單請求中取得特定檔案。 ParseForm和ParseMultipartForm函數用於解析表單資料和多部分錶單資料。使用這些函數簡化了文件處理流程,讓開發者專注於業務邏輯。

jQuery如何移除元素的height屬性?在前端開發中,經常會遇到需要操作元素的高度屬性的需求。有時候,我們可能需要動態改變元素的高度,而有時候又需要移除元素的高度屬性。本文將介紹如何使用jQuery來移除元素的高度屬性,並提供具體的程式碼範例。在使用jQuery操作高度屬性之前,我們首先需要了解CSS中的height屬性。 height屬性用於設定元素的高度

如何在Golang中實現拖放檔案上傳?啟用中間件;處理檔案上傳請求;建立拖曳區域的HTML程式碼;新增處理拖曳事件的JavaScript程式碼。

jQuery中如何使用PUT請求方式?在jQuery中,發送PUT請求的方法與發送其他類型的請求類似,但需要注意一些細節和參數設定。 PUT請求通常用於更新資源,例如更新資料庫中的資料或更新伺服器上的檔案。以下是在jQuery中使用PUT請求方式的具體程式碼範例。首先,確保引入了jQuery庫文件,然後可以透過以下方式發送PUT請求:$.ajax({u

標題:jQuery小技巧:快速修改頁面所有a標籤的文字在網頁開發中,我們經常需要對頁面中的元素進行修改和操作。使用jQuery時,有時候需要一次修改頁面中所有a標籤的文字內容,這樣可以節省時間和精力。以下將介紹如何使用jQuery快速修改頁面所有a標籤的文本,同時給出具體的程式碼範例。首先,我們需要引入jQuery庫文件,確保在頁面中引入了以下程式碼:<

標題:使用jQuery修改所有a標籤的文字內容jQuery是一款受歡迎的JavaScript庫,被廣泛用於處理DOM操作。在網頁開發中,經常會遇到需要修改頁面上連結標籤(a標籤)的文字內容的需求。本文將介紹如何使用jQuery來實現這個目標,並提供具體的程式碼範例。首先,我們需要在頁面中引入jQuery庫。在HTML檔案中加入以下程式碼:

如何判斷jQuery元素是否具有特定屬性?在使用jQuery操作DOM元素時,常會遇到需要判斷元素是否具有某個特定屬性的情況。在這種情況下,我們可以藉助jQuery提供的方法來輕鬆實現這項功能。以下將介紹兩種常用的方法來判斷一個jQuery元素是否具有特定屬性,並附上具體的程式碼範例。方法一:使用attr()方法和typeof運算子//判斷元素是否具有特定屬
