首页 > 编程 > JavaScript > 正文

asp.net+jquery.form实现图片异步上传的方法(附jquery.form.js下载)

2019-11-20 10:09:27
字体:
来源:转载
供稿:网友

本文实例讲述了asp.net+jquery.form实现图片异步上传的方法。分享给大家供大家参考,具体如下:

首先我们需要做准备工作:

jquery 点击此处本站下载

jquery.form.js 点击此处本站下载

页面JqueryFormTest.aspx:

<%@ Page Language="C#" AutoEventWireup="true" CodeFile="JqueryFormTest.aspx.cs" Inherits="JqueryFormTest" %><!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN""http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><html xmlns="http://www.w3.org/1999/xhtml"><head runat="server"> <title></title> <script src="JS/jquery-1.8.0.js" type="text/javascript"></script> <script src="JS/jquery.form.js" type="text/javascript"></script> <script type="text/javascript">  $(function () {   $("#btn").click(function () {    $("#fm1").ajaxSubmit({     url: "img.ashx",     type: "post",     success: function (data) {      alert(data);      //IE显示图片会默认加上<PRE></PRE>,着必须要把去除掉才能在低版本ie显示      data = data.replace("<PRE>", "").replace("</PRE>", "");      $("#divimg").append("<img src='" + data + "' width='200px' height='200px'/>");      //清空file控件里面的值      var file = $("#btnfile");      file.after(file.clone().val(""));      file.remove();     }    });   });  }) </script></head><body> <form id="fm1" method="post"> <!--method="post"不能省略,在ie里面必不可少--> <input type="file" id="btnfile" name="btnfile" value="提交" /> <br /> <input type="button" id="btn" value="上传" /> </form> <div id="divimg"> </div></body></html>

img.ashx:

<%@ WebHandler Language="C#" Class="img" %>using System;using System.Web;public class img : IHttpHandler { public void ProcessRequest (HttpContext context) {  context.Response.ContentType = "text/plain";  //获取上传的文件的对象  HttpPostedFile img = context.Request.Files["btnfile"];  //获取上传文件的名称  string s = img.FileName;  //截取获得上传文件的名称(ie上传会把绝对路径也连带上,这里只得到文件的名称)  string str = s.Substring(s.LastIndexOf("//") + 1);  string path = "~/upload/"+ str;  //保存文件  img.SaveAs(context.Server.MapPath(path));  //HttpRuntime.AppDomainAppVirtualPath主要是获取应用程序虚拟路径名称,因为响应给页面时不会自动添加而导致无法显示图片  context.Response.Write(HttpRuntime.AppDomainAppVirtualPath + path.Substring(1));//path.Substring(1)用来去除第一个~字符 } public bool IsReusable {  get {   return false;  } }}

更多关于jQuery相关内容感兴趣的读者可查看本站专题:《jQuery切换特效与技巧总结》、《jQuery拖拽特效与技巧总结》、《jQuery扩展技巧总结》、《jQuery常见经典特效汇总》、《jQuery动画与特效用法总结》、《jquery选择器用法总结》及《jQuery常用插件及用法总结

希望本文所述对大家jQuery程序设计有所帮助。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表