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

首頁 > 學院 > 開發設計 > 正文

AjaxFileUpload在C#中應用

2019-11-14 14:02:50
字體:
來源:轉載
供稿:網友

一、前臺頁面

<!DOCTYPE html><html xmlns="http://www.w3.org/1999/xhtml"><head runat="server"><meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>    <title></title>    <script src="js/jquery-1.8.2.min.js" type="text/javascript"></script>    <script src="js/Ajaxfileupload.js"></script>    <script type="text/Javascript">        function CheckFile() {            $.ajaxFileUpload({                url: 'upload.ashx?time=' + new Date(),                secureuri: false,                fileElementId: 'fuFileLoad', //上傳控件ID                  dataType: 'json', //返回值類型 一般設置為json                success: function (data, status) {                    var jsonData = $.parseJSON(data);                    alert(jsonData.Eor);                    if (jsonData.Eor == "sucCSS") {                        alert(jsonData.Msg);                    } else {                        alert(jsonData.Msg);                    }                },                error: function (data, status, e) {                    alert(e);   //就是在這彈出“語法錯誤”                   }            });        }    </script></head><body>    <form id="form1" runat="server">        <asp:FileUpload ID="fuFileLoad" runat="server" onchange="CheckFile();" />    </form></body></html>

 二、上傳功能代碼 upload.ashx

using System;using System.IO;using System.Web;using System.Web.Script.Serialization;public class upload : IHttpHandler {        public void PRocessRequest (HttpContext context) {        //文件大小限制10M        const int maxSize = 10485760;        //定義允許上傳的文件擴展名        var ext = new[] { "rar", "zip", "gif", "jpg", "jpeg", "png", "bmp", "xls", "xlsx", "doc", "docx", "et", "wps" };        string strExt = "";        foreach (var a in ext)        {            strExt += a + "/";        }        strExt = strExt.TrimEnd('/');        string savePath = "/upLoads/";                //文件保存路徑        var resp = new UploadResponse();        HttpFileCollection imgFile = context.Request.Files;        if (imgFile.Count > 0)        {            string fileExt = Path.GetExtension(imgFile[0].FileName);           //獲得擴展名            if (string.IsNullOrEmpty(fileExt) || Array.IndexOf(ext, fileExt.Substring(1).ToLower()) < 0)            {                resp.Eor = "error";                resp.Msg = string.Format("擴展名為{0}的文件不允許上傳!/n只允許上傳{1}格式的文件。", fileExt, strExt);            }            else            {                if (imgFile[0].InputStream.Length > maxSize)                {                    resp.Eor = "error";                    resp.Msg = "上傳文件大小超過限制!";                }                else                {                    string fileNewName = DateTime.Now.ToString("yyyyMMddHHmmssffff") + fileExt;     //新的文件名                    try                    {                        SaveFile(imgFile[0], context.Server.MapPath(savePath), fileNewName);       //保存文件                        resp.Eor = "succss";                        resp.Msg = "上傳成功! 文件大小為:" + imgFile[0].ContentLength;                        resp.ImgUrl = savePath + fileNewName;                        resp.FName = fileNewName;                        resp.OName = imgFile[0].FileName;                    }                    catch (Exception ex)                    {                        resp.Eor = "error";                        resp.Msg = ex.ToString();                    }                }            }        }        else        {            resp.Eor = "error";            resp.Msg = "請選擇文件!";        }        context.Response.ContentType = "text/html";        context.Response.Write(new JavaScriptSerializer().Serialize(resp));        context.Response.End();    }    private void SaveFile(HttpPostedFile imgFile, string savePath, string fileName)    {        if (!Directory.Exists(savePath))    //判斷文件存放路徑是否存在        {            Directory.CreateDirectory(savePath);        }        imgFile.SaveAs(Path.Combine(savePath, fileName));    }        public class UploadResponse    {        public string Eor { get; set; }        public string Msg { get; set; }        public string ImgUrl { get; set; }        public string FName { get; set; }        public string OName { get; set; }    }        public bool IsReusable {        get {            return false;        }    }}

 三、返回的json數據調整  

四、源代碼下載地址:http://pan.baidu.com/s/1jGo1wzW

熱烈歡迎大家吐槽。

 


發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 尖扎县| 秀山| 靖江市| 三穗县| 双流县| 磐安县| 乌海市| 武宣县| 中宁县| 隆子县| 黑山县| 承德市| 正镶白旗| 辽宁省| 绥中县| 方城县| 邛崃市| 肥东县| 彭阳县| 杨浦区| 彰化县| 金华市| 平顶山市| 景洪市| 敖汉旗| 涿州市| 密山市| 洞头县| 金坛市| 高碑店市| 双流县| 建德市| 昌吉市| 六盘水市| 清新县| 读书| 东港市| 乌兰察布市| 丰台区| 阿拉善右旗| 青州市|