ajax图片上传(asp.net +jquery+ashx)
一、建立Default.aspx页面
- <%@ Page Language="C#" AutoEventWireup="true" CodeFile="Default.aspx.cs" Inherits="_Default" %>
- <!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>ajax图片上传</title>
- <script src="js/jquery-1.3.2.min.js" type="text/javascript"></script>
- <script src="js/jquery.form.js" type="text/javascript"></script>
- <script type="text/javascript">
- function upload(){
- var path = document.getElementById("File1").value;
- var img = document.getElementById("img1");
- if($.trim(path)==""){
- alert("请选择要上传的文件");
- return;
- }
- $("#form1").ajaxSubmit({
- success: function (str) {
- if(str!=null && str!="undefined"){
- if (str == "1") {alert("上传成功");document.getElementById("img1").src="data:images/logo.jpg?"+new Date();/*上传后刷新图片*/}
- else if(str=="2"){alert("只能上传jpg格式的图片");}
- else if(str=="3"){alert("图片不能大于1M");}
- else if(str=="4"){alert("请选择要上传的文件");}
- else {alert('操作失败!');}
- }
- else alert('操作失败!');
- },
- error: function (error) {alert(error);},
- url:'Handler.ashx', /*设置post提交到的页面*/
- type: "post", /*设置表单以post方法提交*/
- dataType: "text" /*设置返回值类型为文本*/
- });
- }
- </script>
- </head>
- <body>
- <form id="form1" runat="server">
- <input id="File1" name="File1" type="file" />
- <input id="iptUp" type="button" value="上传Logo" οnclick="upload()"/>
- <img id="img1" alt="网站Logo" src="data:images/weblogo.jpg" />
- </form>
- </body>
- </html>
二、新建一个一般处理文件Handler.ashx
- <%@ WebHandler Language="C#" Class="Handler" %>
- using System;
- using System.Web;
- public class Handler : IHttpHandler {
- public void ProcessRequest (HttpContext context) {
- HttpPostedFile _upfile = context.Request.Files["File1"];
- if (_upfile == null)
- {
- ResponseWriteEnd(context, "4");//请选择要上传的文件
- }
- else
- {
- string fileName = _upfile.FileName;/*获取文件名: C:\Documents and Settings\Administrator\桌面\123.jpg*/
- string suffix = fileName.Substring(fileName.LastIndexOf(".") + 1).ToLower();/*获取后缀名并转为小写: jpg*/
- int bytes = _upfile.ContentLength;//获取文件的字节大小
- if (suffix != "jpg")
- ResponseWriteEnd(context, "2"); //只能上传JPG格式图片
- if (bytes > 1024 * 1024)
- ResponseWriteEnd(context, "3"); //图片不能大于1M
- _upfile.SaveAs(HttpContext.Current.Server.MapPath("~/images/logo.jpg"));//保存图片
- ResponseWriteEnd(context, "1"); //上传成功
- }
- }
- private void ResponseWriteEnd(HttpContext context, string msg)
- {
- context.Response.Write(msg);
- context.Response.End();
- }
- public bool IsReusable {
- get {
- return false;
- }
- }
- }
项目结构图
转载于:https://www.cnblogs.com/Jeremy2001/p/7226534.html
ajax图片上传(asp.net +jquery+ashx)相关推荐
- ajax图片上传插件demo,jQuery 自制上传头像插件-附带Demo实例(ajaxfileupload.js第三弹)...
这篇文章主要是对前两篇关于ajaxfileupload.js插件的文章 的一个收关.但是最初也是因为想做这么一个功能,一点一点的引发出了好多问题,不断去学习,研究,才写了这三篇. 早些时候已经实现了上 ...
- ajax 不能上传图片,自己动手打造ajax图片上传(网上没有的)
今天笔者需要一款图片上传插件,但是网上没有提供一款符合自己需求且好用的.于是就自己动手写了一个. 方法1,仅使用jquery代码,不用第三方插件.代码如下 上传图片 $(function() { $( ...
- Java使用Ajax图片上传与修改
图片上传 前言 开发工具:idea,MySQL 表单提交方式使用的是Ajax. 创建数据库和表 -- 创建数据库 CREATE DATABASE IF NOT EXISTS shoop DEFAULT ...
- ajax图片上传,基于firefox
图片文件上传,有很多种协议的,这次主要讲的是"Content-Type:multipart/form-data;"的形式. 在工作中前台一些静态文件是通过FTL模版系统,前台页面通 ...
- Ajax安卓成功iOS失败,api.ajax图片上传,ios可以上传成功,安卓上传失败
本帖最后由 孤鹜恋落霞 于 2019-4-10 18:02 编辑 function uploadImg(token, urlParams, imgSrc, callback) { var time = ...
- html ajax 图片上传,Ajax实现图片上传并预览功能
先给大家展示下效果图,大家感觉不错,请参考实现代码. 最近在使用ThinkPHP5开发项目中客户有一个需求是在图片上传时附带预览功能.虽然现在有很多的插件能实现,但是还是觉得自己写比较好.我们知道,图 ...
- 点击button按钮打开file选择图片并使用ajax图片上传并预览
最近有个需求让人很无奈,每条记录都需要让用户上传图片.由于使用插件无法准确的定位到那条记录,只好使用ajax上传图片准确获取id 先将file文件隐藏掉,通过点击button打开file选择图片,一些 ...
- mvc ajax图片上传,MVC 通过ajaxSubmit上传图片并显示
js代码 function submitform() { $("#form_upload").ajaxSubmit({ success: showResponse }); } fu ...
- ASP.NET图片上传(配合jquery.from.js 插件)
前端: js: function AjaxKouBeiShopEdit() { var options = { dataType: "json ...
最新文章
- linux自学(一)之vmware虚拟机安装
- 前端每周清单半年盘点之 PWA 篇
- 火了,挡不住了:Facebook Move编程语言入门
- iOS之深入解析CocoaPods的插件机制和如何加载插件整合开发工具
- 工作与生活 -- 平衡是必须的
- 3.3 keras模型构建的三种方式
- Coursera机器学习课后作业Matlab代码(1~9周)
- 网络对抗技术——密码破解技术
- Java项目集成永中文档在线预览
- NFT游戏开发NFT游戏平台模板搭建NFT平台定制开发MOBOX:NFT Farmer游戏开发
- 我的编程之路上的点滴记录【一】
- 生活中错误的英文——写错的标语
- HarmonyOS之深入解析相机的功能和使用
- 关于SQL中的ASSERTION(某单位想举行一个小型的联谊会……)
- Python之洗牌游戏
- 软件测试未来主要发展的5个趋势
- 第三十七章 Caché 命令大全 ZWRITE 命令
- 基于逻辑回归的新闻数据集分类
- 老婆饼就是老婆,会计就是财务
- VBS表白小工具 用了这个妈妈再也不怕我没有女朋友了