校园春色亚洲色图_亚洲视频分类_中文字幕精品一区二区精品_麻豆一区区三区四区产品精品蜜桃

主頁 > 知識庫 > 自己動手打造ajax圖片上傳(網上沒有的)

自己動手打造ajax圖片上傳(網上沒有的)

熱門標簽:襄陽外呼系統接口 外呼系統獲取客戶手機號 老虎郵局地圖標注點 上海浦東百度地圖標注中心注冊 青海醫療智能外呼系統怎么樣 百靈鳥 目標三維地圖標注 徐州電銷卡外呼系統供應商 科智聯智能電銷機器人

今天筆者需要一款圖片上傳插件,但是網上沒有提供一款符合自己需求且好用的。于是就自己動手寫了一個。

方法1,僅使用jquery代碼,不用第三方插件。代碼如下

p> 
label>上傳圖片/label> 
input class="ke-input-text" type="text" id="url" value="" readonly="readonly" /> 
input type="button" id="uploadButton" value="Upload" /> 
/p> 
script type="text/javascript"> 
$(function() { 
$('.inp_fileToUpload').change(function() { 
var formdata = new FormData(); 
var v_this = $(this); 
var fileObj = v_this.get(0).files; 
url = "/upload/upload_json.ashx"; 
//var fileObj=document.getElementById("fileToUpload").files; 
formdata.append("imgFile", fileObj[0]); 
jQuery.ajax({ 
url : url, 
type : 'post', 
data : formdata, 
cache : false, 
contentType : false, 
processData : false, 
dataType : "json", 
success : function(data) { 
if (data.error == 0) { 
v_this.parent().children(".img_upload").attr("src", data.url); 
//$("#img").attr("src",data.url); 
} 
} 
}); 
return false; 
}); 
}); 
/script>

這種方法的缺點:由于IE6\8\9\不支持formdata,所以這種方法不支持IE9及以下版本

方法二:使用ajaxfileupload.js插件
ajaxfileupload.js
html代碼:

p> 
label>ajax上傳/label> 
input type="file" name="fileToUpload" id="fileToUpload" class="inp_fileToUpload" multiple="multiple"/> 
img src="$web.site$web.tpl#**#adminht/images/lb_head.jpg" width="30px" height="30px" class="img_upload" id="img" /> 
/p> 
p> 
label>最新修改人員:/label> 
input readonly="readonly" type="text" size="30" /> 
/p> 
div> 

script type="text/javascript"> 
$(function() { 
$(".inp_fileToUpload").live("change", function() {//現在這個已經適用于多個file表單。 
ajaxFileUpload($(this).attr("id"), $(this).parent().children(".img_upload").attr("id")); 
}) 
}) 
function ajaxFileUpload(file_id, img_id) { 
jQuery.ajaxFileUpload({ 
url : '/upload/upload_json.ashx', //用于文件上傳的服務器端請求地址 
secureuri : false, //是否需要安全協議,一般設置為false 
fileElementId : file_id, //文件上傳域的ID 
dataType : 'json', //返回值類型 一般設置為json 
success : function(data, status)//服務器成功響應處理函數 
{ 
if (data.error == 0) { 
$("#" + img_id).attr("src", data.url); 
} else { 
alert(data.message); 
} 
}, 
error : function(data, status, e)//服務器響應失敗處理函數 
{ 
alert(e); 
} 
}) 
return false; 
} 
/script> 
/div> 
/div>


說明:這種方法目前測試支持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; 
} 
} 
}
您可能感興趣的文章:
  • 基于bootstrap的上傳插件fileinput實現ajax異步上傳功能(支持多文件上傳預覽拖拽)
  • AjaxUI:鼠標拖拽
  • jQuery Ajax 上傳文件處理方式介紹(推薦)
  • Jquery ajaxsubmit上傳圖片實現代碼
  • php+ajax實現圖片文件上傳功能實例
  • jQuery Ajax文件上傳(php)
  • 一個簡單的jQuery插件ajaxfileupload.js實現ajax上傳文件例子
  • jquery的ajaxSubmit()異步上傳圖片并保存表單數據演示代碼
  • ajax實現異步文件或圖片上傳功能
  • 簡單實現ajax拖拽上傳文件

標簽:揭陽 股票 荊州 佛山 辛集 咸寧 商洛 紅河

巨人網絡通訊聲明:本文標題《自己動手打造ajax圖片上傳(網上沒有的)》,本文關鍵詞  自己,動手,打造,ajax,圖片,;如發現本文內容存在版權問題,煩請提供相關信息告之我們,我們將及時溝通與處理。本站內容系統采集于網絡,涉及言論、版權與本站無關。
  • 相關文章
  • 下面列出與本文章《自己動手打造ajax圖片上傳(網上沒有的)》相關的同類信息!
  • 本頁收集關于自己動手打造ajax圖片上傳(網上沒有的)的相關信息資訊供網民參考!
  • 推薦文章
    校园春色亚洲色图_亚洲视频分类_中文字幕精品一区二区精品_麻豆一区区三区四区产品精品蜜桃
    欧美午夜精品久久久| 亚洲国产一区二区三区青草影视| 亚洲超碰97人人做人人爱| 国产伦精一区二区三区| 欧美日韩三级在线| 日韩一区有码在线| 美国毛片一区二区| 欧美一级国产精品| 天天综合网 天天综合色| 99精品视频在线播放观看| 久久亚洲综合av| 国产一区二区不卡在线| 精品国产sm最大网站免费看| 极品少妇一区二区三区精品视频| 综合分类小说区另类春色亚洲小说欧美| 日韩三级电影网址| 天天操天天干天天综合网| 在线综合视频播放| 日本人妖一区二区| 欧美久久久久久久久久| 日韩在线一区二区三区| 日韩免费电影网站| 国产成人精品一区二区三区四区| 国产精品网站在线播放| 欧美日韩一区二区在线视频| 老司机精品视频一区二区三区| www国产精品av| 91色视频在线| 日韩电影在线一区二区三区| 久久精品夜色噜噜亚洲aⅴ| aaa亚洲精品一二三区| 夜夜精品浪潮av一区二区三区 | 日韩美女视频在线| 国产成人av一区二区| 亚洲综合免费观看高清完整版| 91精品国产综合久久香蕉的特点 | 国产成a人亚洲精| 一区精品在线播放| 精品国产三级电影在线观看| 99re这里只有精品首页| 狠狠色丁香久久婷婷综合_中| 中文字幕乱码亚洲精品一区| 欧美不卡一区二区三区| 欧美美女直播网站| 91浏览器在线视频| 国产乱色国产精品免费视频| 日韩经典中文字幕一区| 亚洲在线视频网站| 一区二区三区国产豹纹内裤在线| 久久日韩粉嫩一区二区三区| 欧美大尺度电影在线| 8x福利精品第一导航| 欧美日韩一区二区三区视频| 91美女视频网站| 欧美在线不卡视频| 欧美一二三区精品| 99国产精品久久久久久久久久| 国产成人精品综合在线观看| 国产米奇在线777精品观看| 国内精品伊人久久久久影院对白| 国产精品不卡一区| 国产亚洲精品久| 久久久精品tv| 国产精品美女久久久久久久久 | 日韩精品一区二| 欧美色图天堂网| 日韩片之四级片| 久久久久久久久免费| 国产精品不卡在线| 亚洲国产精品久久久男人的天堂| 无码av免费一区二区三区试看 | 久久国产视频网| 亚洲自拍偷拍网站| 精品一区二区三区香蕉蜜桃 | 亚洲精选一二三| 亚洲bt欧美bt精品| 黄色精品一二区| 色综合久久久久久久久| 欧美一区二区播放| 国产精品国产a| 久久99国产精品尤物| 91亚洲精品久久久蜜桃| 欧美一卡2卡3卡4卡| 国产精品免费aⅴ片在线观看| 亚洲自拍偷拍麻豆| 国产成人啪免费观看软件| 欧美亚洲综合在线| 久久久久久久综合狠狠综合| 亚洲伊人色欲综合网| 91免费视频网址| 国产女主播一区| 美女脱光内衣内裤视频久久网站 | 国产精品99久久久久久宅男| 欧美群妇大交群的观看方式| 18成人在线视频| av激情综合网| 久久精品人人做| 午夜av一区二区| 欧美色男人天堂| 亚洲va欧美va天堂v国产综合| 色播五月激情综合网| 日韩欧美123| 午夜精品久久久久久| 欧美日韩一区三区四区| 丝袜美腿亚洲色图| 欧美高清你懂得| 日本aⅴ亚洲精品中文乱码| 26uuu国产日韩综合| 黄页视频在线91| 国产精品妹子av| 欧美日韩一区二区在线视频| 日韩中文字幕区一区有砖一区| 日韩美女在线视频| 成人美女视频在线观看| 亚洲黄色在线视频| 欧美另类高清zo欧美| 国产精品一区免费视频| 中文字幕一区二区三区蜜月| 日本精品裸体写真集在线观看| 亚洲成av人片| 日本一区二区三级电影在线观看 | 国产女人18毛片水真多成人如厕 | 中文字幕的久久| 欧美日韩一区二区在线视频| 国产综合久久久久久久久久久久 | 1024精品合集| 欧美电影免费观看高清完整版在线 | 色视频欧美一区二区三区| 五月激情丁香一区二区三区| 久久这里都是精品| 欧美日韩日日夜夜| 成人av在线网站| 肉丝袜脚交视频一区二区| 亚洲视频一区二区在线| 欧美电视剧在线看免费| 欧美日韩综合在线| 色哟哟国产精品| 成人午夜电影久久影院| 日韩不卡一区二区| 夜夜嗨av一区二区三区网页| 国产精品夫妻自拍| 中文字幕第一页久久| 久久久亚洲高清| 久久久久久久国产精品影院| 日韩美一区二区三区| 精品成人在线观看| 久久精品视频网| 国产欧美日韩卡一| 国产精品网曝门| 中文字幕综合网| 伊人婷婷欧美激情| 亚欧色一区w666天堂| 亚洲福利国产精品| 免费高清不卡av| 久久99精品国产麻豆不卡| 国产在线播精品第三| 不卡电影一区二区三区| 欧美在线free| 日韩欧美在线不卡| 亚洲国产精品av| 国产精品久久午夜夜伦鲁鲁| 一区二区三区高清在线| 美腿丝袜在线亚洲一区| 成人精品视频一区| 欧美日韩在线一区二区| 国产免费成人在线视频| 亚洲精品一二三四区| 精品一二三四区| 91久久精品午夜一区二区| 欧美一区二区免费观在线| 精品久久国产老人久久综合| 国产欧美精品在线观看| 亚洲精品国产一区二区精华液| 亚洲国产精品久久不卡毛片 | 亚洲欧洲色图综合| 免费看欧美女人艹b| 一本大道久久a久久精二百| 久久先锋影音av鲁色资源网| 亚洲国产日产av| 91麻豆123| 综合在线观看色| 国产一区二区不卡老阿姨| 在线观看区一区二| 亚洲图片激情小说| 国产精品99久久久久久有的能看 | 欧美性大战久久久久久久蜜臀| 精品国产髙清在线看国产毛片| 亚洲成在线观看| 91精品1区2区| 亚洲一区二区精品视频| 91老师片黄在线观看| 中文字幕免费不卡在线| 成人av综合在线| 亚洲精品免费在线观看| 色综合久久综合| 一区二区三区欧美日韩| 欧美日韩一区中文字幕| 日韩av在线播放中文字幕| 欧美日韩国产免费一区二区| 亚洲亚洲人成综合网络|