前台:
<div style="display:none" id="upimg"><table cellpadding="0" cellspacing="0" style="border-collapse:collapse; border:solid 1px #9bc4e9; width:360px"> <tr> <td align='center' style='width:100px; border:solid 1px #9bc4e9'>图片:</td> <td style='border:solid 1px #9bc4e9; height:35px' align='center'> <input id='imgfile' type='file' /> 保存ID的<input id="Hidden1" type="hidden" /> 保存File控件值的<input id="Hidden2" type="hidden" /> </td> </tr> <tr> <td align='center' style='width:100px; border:solid 1px #9bc4e9; height:35px'> </td> <td style='border:solid 1px #9bc4e9' align='center'><input id="Button1" type="button" value="上传" /></td> </tr> </div>
JS文件:
$(function(){ $("#Button1").click(function(){ var path = $("#Hidden1").val(); if(path.length==0) { alert("请上传图片附件"); return; } $.post("../ashx/Article.ashx",{id:$("#Hidden2").val(),file:path},function(data){ if(parseInt(data)>0) { alert("上传成功"); return; } else { alert("上传失败"); return; } }) }) $("#imgfile").change(function(){ $("#Hidden1").val($(this).val()); }) })
ashx代码:
<%@ WebHandler Language="C#" Class="Article" %> using System; using System.Web; using Web.Dal; using System.Web.UI; using System.Web.UI.HtmlControls; using System.Web.UI.WebControls; using System.Web.UI.WebControls.WebParts; using System.IO; using System.Net; public class Article : IHttpHandler { public void ProcessRequest (HttpContext context) { context.Response.ContentType = "text/plain"; string path = context.Request.Form["file"]; int id = Convert.ToInt32(context.Request.Form["id"]); //FileUpload fu = new FileUpload(); //fu.PostedFile.FileName = path; string savepath = string.Format("WebUI/File/NewsImg/{0}-{1}/", DateTime.Now.Year, DateTime.Now.Month); if (!Directory.Exists(context.Server.MapPath("~/" + savepath))) Directory.CreateDirectory(context.Server.MapPath("~/" + savepath)); string sty = path.Substring(path.LastIndexOf('.')); savepath += DateTime.Now.Ticks.ToString() + sty; WebClient myWebClient = new WebClient(); //设定window网络安全认证 myWebClient.Credentials = CredentialCache.DefaultCredentials; //要上传的文件 FileStream fs = new FileStream(path, FileMode.Open, FileAccess.Read); BinaryReader br = new BinaryReader(fs); //使用UploadFile方法可以用下面的格式 myWebClient.UploadFile(savepath, path); context.Response.Write(new ArticleServer().EditImg(id, savepath)); } public bool IsReusable { get { return false; } } }
- 本文标题: JQuery上传图片实例
- 文章分类:【JQuery/JavaScript】
- 非特殊说明,本文版权归【胡同里的砖头】个人博客 所有,转载请注明出处.