ajaxfileupload上传文件

页面引用 ajaxfileupload.js
下载地址:http://files.cnblogs.com/files/kissdodog/ajaxfileupload_JS_File.rar

html:

 <input type="file"  name="file"  id="TaskFile">

js:

//上传文件
    //fileElementId:file控件 ID
    //fileType:文件存放的文件夹名称
    //fc:请求成功后方法
    function uploadFile(fileElementId, fileType, fc) {

        $.ajaxFileUpload({
            url: "/Utility/SavePic?FolderName=" + fileType,
            secureuri: false,
            fileElementId: fileElementId,
            async: false,
            dataType: 'json',
            loading: "正在保存数据...",
            success: function (result) {
                //typeof fc == "function" && fc(result); 
                console.log(result)
                if (result.type.toString() == "1") {
                    fc && fc(result);
                }
                else {
                    toast(result.message);
                    return false;
                }
            }
        });
    }

//调用方法
UploadFile("TaskFile", FolderName, function (result) {
                if (result.message == "success") {
                   //成功操作
                }

                });

c# 后端处理:

        /// <summary>
        /// 上传文件
        /// </summary>
        /// <returns></returns>
        public ActionResult SavePic(string FolderName)
        {

            HttpFileCollection files = System.Web.HttpContext.Current.Request.Files;
            //没有文件上传,直接返回
            if (files[0].ContentLength == 0 || string.IsNullOrEmpty(files[0].FileName))
            {
                return Success("nofile");
            }
            if (files[0].ContentLength / 1024 / 1024 > 25)
            {
                return Error("文件上传过大,最大支持25M,请重新上传!");
            }
            //不存在创建对应目录
            string tempPath = "/Resource/" + FolderName + "/" + DateTime.Now.ToString("yyyyMMdd");
            string mappath = Server.MapPath("~" + tempPath);

            if (Directory.Exists(mappath) == false)
            {
                Directory.CreateDirectory(mappath);
            }
            string FileEextension = Path.GetExtension(files[0].FileName);
            string NewFileName = Guid.NewGuid().ToString() + FileEextension;

            string virtualPath = tempPath + "/" + NewFileName;
            string fullFileName = mappath + "/" + NewFileName;
            files[0].SaveAs(fullFileName);
            var data = new
            {
                file_path = virtualPath,
                file_name = files[0].FileName,
                file_ext = FileEextension
            };
            return Success("success", data);
        }
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容