国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 開發 > JS > 正文

JQuery fileupload插件實現文件上傳功能

2024-05-06 16:29:49
字體:
來源:轉載
供稿:網友
這篇文章主要介紹了JQuery fileupload插件實現文件上傳功能的相關資料,需要的朋友可以參考下
 

道理相通,我簡單分享下在.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"  @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

以上就是本文的全部內容,希望對大家的學習有所幫助。



發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 宜黄县| 临洮县| 兴宁市| 舟曲县| 深水埗区| 东乡| 大竹县| 宁都县| 富平县| 昆山市| 怀柔区| 库尔勒市| 安溪县| 巴中市| 鲁山县| 汉川市| 徐闻县| 许昌市| 茂名市| 鹤峰县| 安溪县| 镇原县| 洛阳市| 鄂伦春自治旗| 山东省| 柳林县| 通海县| 全椒县| 南华县| 苏州市| 三亚市| 宁蒗| 宝应县| 潮安县| 洛浦县| 香河县| 西乌| 开江县| 闻喜县| 时尚| 稻城县|