asp ajax 文件上传,asp.net+ajaxfileupload.js 实现文件异步上传代码分享

2023-05-16

由于代码很简单,这里就闲话不多说了,直接上代码,小伙伴们自己研读代码就明白了。

前台代码:

/*修改头像*/

//上传

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);

}

}

///

/// 上传图片

///

///

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();

}

}

}

}

是不是很实用,也很简单易懂呢,以上是自己项目中使用的代码,小伙伴们如果发现有问题的地方,还请告之。谢谢

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

asp ajax 文件上传,asp.net+ajaxfileupload.js 实现文件异步上传代码分享 的相关文章

随机推荐