c# – 使用jquery和handler(ashx)在上传文件中找不到’错误’
发布时间:2020-12-15 22:38:33 所属栏目:百科 来源:网络整理
导读:UploadHandler.ashx.cs public class UploadHandler : IHttpHandler{ public void ProcessRequest(HttpContext context) { context.Response.ContentType = "text/plain"; try { string dirFullPath = HttpContext.Current.Server.MapPath("~/Uploader/"); s
UploadHandler.ashx.cs
public class UploadHandler : IHttpHandler { public void ProcessRequest(HttpContext context) { context.Response.ContentType = "text/plain"; try { string dirFullPath = HttpContext.Current.Server.MapPath("~/Uploader/"); string[] files; int numFiles; files = System.IO.Directory.GetFiles(dirFullPath); numFiles = files.Length; numFiles = numFiles + 1; string str_image = ""; foreach (string s in context.Request.Files) { HttpPostedFile file = context.Request.Files[s]; string fileName = file.FileName; string fileExtension = file.ContentType; if (!string.IsNullOrEmpty(fileName)) { fileExtension = Path.GetExtension(fileName); str_image = "MyPHOTO_" + numFiles.ToString() + fileExtension; string pathToSave_100 = HttpContext.Current.Server.MapPath("~/Uploader/") + str_image; file.SaveAs(pathToSave_100); } } // database record update logic here () context.Response.Write(str_image); } catch (Exception ac) { } } public bool IsReusable { get { return false; } } } JsCode /Image Upload code function sendFile(file) { var formData = new FormData(); formData.append('file',$('#f_UploadImage')[0].files[0]); $.ajax({ url: 'UploadHandler.ashx',type: 'POST',data: formData,cache: false,processData: false,contentType: false,success: function(result) { if (result != 'error') { var my_path = "Uploader/" + result; $("#myUploadedImg").attr("src",my_path); } },error: function(err) { alert(err.statusText); } }); } function callImgUploader() { var _URL = window.URL || window.webkitURL; $("#f_UploadImage").on('change',function() { var file,img; if ((file = this.files[0])) { img = new Image(); img.onload = function() { sendFile(file); }; img.onerror = function() { alert("Not a valid file:" + file.type); }; img.src = _URL.createObjectURL(file); } }); } 注意:我的Aspx页面是不同的文件夹和Image Folder和UploadHandler.ashx.cs是路径文件夹错了吗? 运行ajax请求后每次给出Not-Found错误怎么能修复它. 谢谢. 解决方法
您没有提到您正在使用哪个上传控件,我假设它是服务器端,您需要按如下方式访问它
更改 $('#f_UploadImage') 至 $('#<%= f_UploadImage.ClientID %>') (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |