前台代码:
/*修改头像*/ //上传 function _sc() { $(".ckfile").html("").css("color", "#535353"); $("#_userImgPath").val(""); var str = $("#file").val(); if ($.trim(str) == "") { $(".ckfile").html("请选择文件。").css("color", "red"); return false; } else { var postfix = str.substring(str.lastIndexOf(".") + 1).toUpperCase(); if (postfix == "JPG" || postfix == "JPEG" || postfix == "PNG" || postfix == "GIF" || postfix == "BMP") { $('#showimg').attr('src', 'Images/loading.gif').attr("title", "上传中,请稍后…"); var path = "Upload/UserImg"; $.ajaxFileUpload({ url: '/Upload.aspx?path=Upload|UserImg&shape=100*100', secureuri: false, fileElementId: 'file', dataType: 'text', success: function (msg) { if (msg.lastIndexOf(path) == -1) { $(".ckfile").html(msg).css("color", "red"); } else { $('#showimg').attr('src', msg).attr("title", "我的头像"); $("#_userImgPath").val(msg); } } }); } else { $(".ckfile").html("文件格式错误。").css("color", "red"); return false; } } } 后台代码: using System; using System.Collections.Generic; using System.Linq; using System.Web; using System.Web.UI; using System.Web.UI.WebControls; using SS.Upload; using WFC.Fenxiao; namespace wanfangcheng { public partial class Upload : BasePage { //文件大小 1024 kb private long size = 1024; //文件类型 private string type = ".jpg|.jpeg|.png|.gif|.bmp"; //保存名称 string name = ""; //保存路径 private string path = @"Upload/UserImg"; //保存大小 private string shape = "100*100"; protected void Page_Load(object sender, EventArgs e) { HttpFileCollection files = Request.Files; if (files != null && files.Count > 0) { name = BaseRole.Instance.UserId.ToString(); if (Request.QueryString["size"] != null) { size = Convert.ToInt32(Request.QueryString["size"]); } if (Request.QueryString["path"] != null) { path = Request.QueryString["path"].ToString().Trim().Replace('|', '/'); } if (Request.QueryString["name"] != null) { name = Request.QueryString["name"].ToString().Trim(); } if (Request.QueryString["shape"] != null) { shape = Request.QueryString["shape"].ToString().Trim(); } uploadMethod(files); } } /// <summary> /// 上传图片 /// </summary> /// <param name="hc"></param> public void uploadMethod(HttpFileCollection hc) { HttpPostedFile _file = hc[0]; //文件大小 long _size = _file.ContentLength; if (_size <= 0) { Response.Write("文件错误。"); Response.End(); return; } if (size * 1024 < _size) { Response.Write("文件过大,最大限制为" + size + "KB。"); Response.End(); return; } //文件名 string _name = _file.FileName; //文件格式 string _tp = System.IO.Path.GetExtension(_name).ToLower(); if (type.IndexOf(_tp) == -1) { Response.Write("文件格式错误。"); Response.End(); return; } //保存路径 string _path = HttpContext.Current.Server.MapPath(path) + @"/" + name + _tp; try { int w = Convert.ToInt32(shape.Split('*')[0]); int h = Convert.ToInt32(shape.Split('*')[1]); ImageHelper.CutForCustom(_file, _path, w, h, 50); Response.Write(path + @"/" + name + _tp); } catch (Exception) { Response.Write("哎呦,出错了。"); Response.End(); } } } }