自己动手打造ajax图片上传的方法教程
发表于:2025-01-22 作者:千家信息网编辑
千家信息网最后更新 2025年01月22日,这篇文章主要介绍"自己动手打造ajax图片上传的方法教程",在日常操作中,相信很多人在自己动手打造ajax图片上传的方法教程问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答
千家信息网最后更新 2025年01月22日自己动手打造ajax图片上传的方法教程
这篇文章主要介绍"自己动手打造ajax图片上传的方法教程",在日常操作中,相信很多人在自己动手打造ajax图片上传的方法教程问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答"自己动手打造ajax图片上传的方法教程"的疑惑有所帮助!接下来,请跟着小编一起来学习吧!
方法1,仅使用jquery代码,不用第三方插件。代码如下
这种方法的缺点:由于IE6\8\9\不支持formdata,所以这种方法不支持IE9及以下版本
方法二:使用ajaxfileupload.js插件
ajaxfileupload.js
html代码:
说明:这种方法目前测试支持IE8/9,谷歌,兼容比方法1好。建议采用方法2
文件上传后台处理代码(asp.net版)
<%@ webhandler Language="C#" class="Upload" %> using System; using System.Collections; using System.Web; using System.IO; using System.Globalization; using LitJson; public class Upload : IHttpHandler { private HttpContext context; public void ProcessRequest(HttpContext context) { String aspxUrl = context.Request.Path.Substring(0, context.Request.Path.LastIndexOf("/") + 1); //文件保存目录路径 String savePath = "attached/"; //文件保存目录URL String saveUrl = aspxUrl + "attached/"; //定义允许上传的文件扩展名 Hashtable extTable = new Hashtable(); extTable.Add("image", "gif,jpg,jpeg,png,bmp"); extTable.Add("flash", "swf,flv"); extTable.Add("media", "swf,flv,mp3,wav,wma,wmv,mid,avi,mpg,asf,rm,rmvb"); extTable.Add("file", "doc,docx,xls,xlsx,ppt,htm,html,txt,zip,rar,gz,bz2"); //最大文件大小 int maxSize = 1000000; this.context = context; HttpPostedFile imgFile = context.Request.Files["imgFile"]; if (imgFile == null) { showError("请选择文件。"); } String dirPath = context.Server.MapPath(savePath); if (!Directory.Exists(dirPath)) { showError("上传目录不存在。"); } String dirName = context.Request.QueryString["dir"]; if (String.IsNullOrEmpty(dirName)) { dirName = "image"; } if (!extTable.ContainsKey(dirName)) { showError("目录名不正确。"); } String fileName = imgFile.FileName; String fileExt = Path.GetExtension(fileName).ToLower(); if (imgFile.InputStream == null || imgFile.InputStream.Length > maxSize) { showError("上传文件大小超过限制。"); } if (String.IsNullOrEmpty(fileExt) || Array.IndexOf(((String)extTable[dirName]).Split(','), fileExt.Substring(1).ToLower()) == -1) { showError("上传文件扩展名是不允许的扩展名。\n只允许" + ((String)extTable[dirName]) + "格式。"); } //创建文件夹 dirPath += dirName + "/"; saveUrl += dirName + "/"; if (!Directory.Exists(dirPath)) { Directory.CreateDirectory(dirPath); } String ymd = DateTime.Now.ToString("yyyyMMdd", DateTimeFormatInfo.InvariantInfo); dirPath += ymd + "/"; saveUrl += ymd + "/"; if (!Directory.Exists(dirPath)) { Directory.CreateDirectory(dirPath); } String newFileName = DateTime.Now.ToString("yyyyMMddHHmmss_ffff", DateTimeFormatInfo.InvariantInfo) + fileExt; String filePath = dirPath + newFileName; imgFile.SaveAs(filePath); String fileUrl = saveUrl + newFileName; Hashtable hash = new Hashtable(); hash["error"] = 0; hash["url"] = fileUrl; context.Response.AddHeader("Content-Type", "text/html; charset=UTF-8"); context.Response.Write(JsonMapper.ToJson(hash)); context.Response.End(); } private void showError(string message) { Hashtable hash = new Hashtable(); hash["error"] = 1; hash["message"] = message; context.Response.AddHeader("Content-Type", "text/html; charset=UTF-8"); context.Response.Write(JsonMapper.ToJson(hash)); context.Response.End(); } public bool IsReusable { get { return true; } } }
到此,关于"自己动手打造ajax图片上传的方法教程"的学习就结束了,希望能够解决大家的疑惑。理论与实践的搭配能更好的帮助大家学习,快去试试吧!若想继续学习更多相关知识,请继续关注网站,小编会继续努力为大家带来更多实用的文章!
方法
文件
图片
教程
代码
目录
学习
扩展名
服务器
处理
支持
服务
函数
大小
插件
更多
帮助
实用
最大
安全
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
服务器放点什么好
黄彦林网络安全
tiktok首席安全服务器
微信小程序数据库升级
浪潮哪一年研发高端服务器
谷粒公社互联网科技融资
山东科技大学研究生院数据库
怎么得到淘宝客户数据库
服务器如何接收数据
泰州idc服务器厂商
易语言标签如何显示数据库数据
教科版选修网络技术的pdf
观看网络安全心得体会200字
口袋妖怪复刻九游数据库
网络安全维护月
联通犇跃科技互联网
简述软件开发的形式化方法
宝鸡软件开发价格走势
车品牌数据库下载
公安网络安全攻防是什么业务
云服务器控制台模板
谈谈对数据库发展的展望
公安网络安全大检查
鬼屋设计软件开发
求生之路2如何调出服务器
访问服务器上的网页
签字设计软件开发
高新区好服务器质量保证
服务器资源管理器功能
网络安全周会记录表