最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

asp.net利用ashx文件實現(xiàn)文件的上傳功能

 更新時間:2019年11月28日 08:33:55   作者:HerryDong  
這篇文章主要介紹了asp.net利用ashx文件實現(xiàn)文件的上傳功能,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧

原來以為文件上傳是一個比較簡單的功能,結果搞了一個晚上才搞定~這里主要介紹兩種方法實現(xiàn)。

方法一:Form表單提交

html代碼:

<!DOCTYPE html>
<html>
<head>
  <meta charset="utf-8" />
  <title>上傳文件</title>
  <script src="Scripts/jquery-1.11.3.min.js"></script>
</head>
<body>
  <form action="UploadHandler.ashx" method="post" enctype="multipart/form-data">
    <input id="file_upload" name="file_upload" type="file" />
    <input id="btn_upload" type="submit" value="上傳" />
  </form>
</body>
</html>

UploadHandler.ashx代碼:

using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;

namespace WebApplication1
{
  /// <summary>
  /// UploadHandler 的摘要說明
  /// </summary>
  public class UploadHandler : IHttpHandler
  {
    public void ProcessRequest(HttpContext context)
    {
      context.Response.ContentType = "text/plain";

      HttpPostedFile file = context.Request.Files["file_upload"];
      string filePath = context.Server.MapPath("~/UploadFiles/") + System.IO.Path.GetFileName(file.FileName);
      file.SaveAs(filePath);

      context.Response.Write("上傳文件成功");
    }

    public bool IsReusable
    {
      get
      {
        return false;
      }
    }
  }
}

該方法雖然能夠實現(xiàn)文件的上傳,但是form表單提交之后整個頁面就刷新了,如果要無刷新上傳文件的話,就要使用ajax了。

方法二:jquery + ajax無刷上傳

html代碼:

<!DOCTYPE html>
<html>
<head>
  <meta charset="utf-8" />
  <title>上傳文件</title>
  <script src="Scripts/jquery-1.11.3.min.js"></script>
</head>
<body>
  <input id="file_upload" name="file_upload" type="file" />
  <input id="btn_upload" type="button" value="上傳" />

  <script>
    $(document).ready(function ()
    {
      $('#btn_upload').bind('click', function ()
      {
        var formData = new FormData();
        formData.append('upload_file', $('#file_upload')[0].files[0]);
        $.ajax({
          url: 'UploadHandler.ashx',
          type: 'post',
          data: formData,
          contentType: false,
          processData: false,
          success: function (msg)
          {
            if (msg == "Yes")
            {
              alert('文件上傳成功');
            }
            else
            {
              alert('文件上傳失敗');
            }
          }
        })
      });
    });
  </script>
</body>
</html>

UploadHandler.ashx代碼:

using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;

namespace WebApplication1
{
  /// <summary>
  /// UploadHandler 的摘要說明
  /// </summary>
  public class UploadHandler : IHttpHandler
  {

    public void ProcessRequest(HttpContext context)
    {
      context.Response.ContentType = "text/plain";

      if (context.Request.Files.Count > 0)
      {
        HttpPostedFile file = context.Request.Files["upload_file"];
        string filePath = context.Server.MapPath("~/UploadFiles/") + System.IO.Path.GetFileName(file.FileName);
        file.SaveAs(filePath);
        context.Response.Write("Yes");
      }
      else
      {
        context.Response.Write("No");
      }
    }

    public bool IsReusable
    {
      get
      {
        return false;
      }
    }
  }
}

個人更推薦方法二,運行結果如下圖所示:

以上就是本文的全部內(nèi)容,希望對大家的學習有所幫助,也希望大家多多支持腳本之家。

相關文章

最新評論

堆龙德庆县| 通州市| 嘉定区| 调兵山市| 金坛市| 略阳县| 化德县| 丰宁| 镇平县| 惠东县| 克拉玛依市| 南康市| 瓦房店市| 澜沧| 通江县| 鲁山县| 济阳县| 游戏| 曲阳县| 凉城县| 邵东县| 蓬莱市| 肇源县| 泊头市| 东方市| 松潘县| 皋兰县| 讷河市| 永川市| 顺昌县| 饶河县| 左贡县| 晋城| 稷山县| 师宗县| 石屏县| 罗甸县| 威信县| 绥滨县| 鹤山市| 彝良县|