实现图片上传(ajax传输图片),本文通过数据整理汇集了实现图片上传(ajax传输图片)相关信息,下面一起看看。

使用场景如下:上传图片时,开发者使用的图片上传方式由Iframe # 传统的http post。并且没有建立统一的上传功能。

所以我心血来潮改了代码。我想用ajax异步上传图片。这个技术应该很老套了。于是我直接打开了功能强大的cnblogs(博客花园),轻松找到了这篇文章,直接跟着葫芦画瓢,直接 接受了教义 作者的劳动成果。代码很快就被完全转换了。但是当我把程序发布到网站上时,问题就来了。上传文件无效!流汗是懒惰的结果。继续打开之前引用的文章。原来作者解释说只能在本地使用,不能发布到服务器。我想,我还用iframe http post这种压抑的方式吗?

于是不甘心,我打开了更强大的google,开始了全球寻找解决方案,终于一切都有了回报。我发现 jquery . form . js ;

异步上传图片的步骤如下:

1.先引用jquery js框架(这个东西的好处不用讨论)再引用 jquery . form . js ;

2.建立通用加工程序ashx。

核心代码如下:

html:

复制代码如下:

$(function () {

//上传图片

$(#btnUpload )。单击(函数(){

if ($(#flUpload )。val()==) {

警报( 请选择一个图像文件,然后单击上传。);

返回;

}

$(&#;#UpLoadForm &#;)。ajaxSubmit({

成功:函数(html,状态){

var result=html.replace( );

result=result.replace( );

$(#image )。attr(&#;src &#;结果);

警报(结果);

}

});

});

});

Ashx如下:

复制代码如下:

命名空间TestMvc。效用

{

///

PicUploadHander的摘要说明

///

公共类PicUploadHander : IHttpHandler

{

公共void ProcessRequest(HttpContext上下文)

{

语境。response . content type= text/plain

//验证上传权限,TODO

string _ fileNamePath=

尝试

{

_ fileNamePath=上下文。请求. Files[0]。文件名;

//开始上传

string _ saved file result=upload image(_ filename path,context);

语境。response . Write(_ saved file result);

}

捕捉

{

语境。回复。写( 上传和提交时出错 );

}

}

注意:整个上传使用ajax异步数据,jquery在上传成功后回调图片在服务器上的相对路径。总的来说,这种方式比传统的上传图片的方式要好。

更多实现图片上传(ajax传输图片)相关信息请关注本站。