前台代碼:
<!DOCTYPE html> <html class="ui-mobile landscape min-width-240px min-width-320px min-width-480px min-width-768px min-width-1024px"> <head> <title> </title> <meta charset="utf-8"> <meta name="viewport" content="width=device-width, initial-scale=1, user-scalable=no, minimum-scale=1.0, maximum-scale=1.0"> <link rel="stylesheet" href="css/ui-media.css"> <link rel="stylesheet" href="css/ui-base.css"> <link rel="stylesheet" href="css/ui-apple.css"> <script src="js/zy_anim.js"> </script> <script src="js/zy_control.js"> </script> <script src="js/zy_tmpl.js"> </script> </head> <body class="ui-mobile-viewport" > <div id="page" class="ui-page ui-body-d ui-page-active ui-header-fixed" tabindex="0"> <div data-role="header" class="ui-header ui-bar-iphone " > <h1 class="ui-title" tabindex="0" role="heading" aria-level="1">Images</h1> <div class="ui-btn ui-btn-right ui-btn-corner-all ui-shadow ui-btn-a " onclick="actionsheet();"> <span class="ui-btn-inner ui-btn-corner-all"> <span class="ui-btn-text">選擇</span> </span></div> </div> <div id="msgid" class="ui-bar ui-bar-e "> </div> <div class="ui-content ui-body-d"> <img id="imgid" src="img/2.png" style="height:500px;width:450px;position:absolute;left:0.5em;"/> </div> <div data-role="footer" class="ui-footer ui-bar-a ui-footer-fixed"> <div class="ui-bar ui-bar-a "> <div class="ui-btn ui-btn-corner-all ui-shadow ui-btn-a ui-btn-inline " onclick="viewpic();"> <span class="ui-btn-inner ui-btn-corner-all"> <span class="ui-btn-text">圖片查看器</span> </span> <button class="ui-btn-hidden">按鈕</button> </div> <div class="ui-btn ui-btn-corner-all ui-shadow ui-btn-a ui-btn-inline " onclick="downloadurl();"> <span class="ui-btn-inner ui-btn-corner-all"> <span class="ui-btn-text">下載網絡圖片</span> </span> <button class="ui-btn-hidden">按鈕</button> </div> <div class="ui-btn ui-btn-corner-all ui-shadow ui-btn-a ui-btn-inline " onclick="uploadpic();"> <span class="ui-btn-inner ui-btn-corner-all"> <span class="ui-btn-text">上傳</span> </span> <button class="ui-btn-hidden">按鈕</button> </div> </div> </div> </div> <script> var imgurl = "wgt://img/2.png";//默認圖片url //顯示log function setLog(msg){ document.getElementById("msgid").innerHTML = msg; } //彈出actionSheet function actionsheet(){ uexWindow.actionSheet("選擇圖片", "取消", ["照相機拍攝","本地文件","網絡文件"]); } //通過圖片查看器查看圖片 function viewpic(){ var ar = new Array(); ar[0]=imgurl; uexImageBrowser.open(ar); } //下載網絡圖片 var dopCode=1; var inSavePath=null; function downloadurl(){ if(imgurl.indexOf("http://")==0){ var q = imgurl.match(/.*\.(.*)/); inSavePath = (new Date()).getTime()+"."+q[1]; uexDownloaderMgr.createDownloader(dopCode); }else{ uexWindow.toast(0,5,"非網絡圖片",1000); } } //上傳圖片 var uploadHttp = "http://192.168.1.23:86/abc.ashx?from=web"; var uopCode =2; function uploadpic(){ if (imgurl.indexOf("http://") < 0) { alert(imgurl); alert(uploadHttp); uexUploaderMgr.createUploader(uopCode, uploadHttp); } else { uexWindow.toast(0, 5, "非本地圖片", 1000); } } window.uexOnload = function(){ uexWindow.cbActionSheet = function(opId,dataType,data){ switch(parseInt(data)){ case 0: uexCamera.open(); break; case 1: uexFileMgr.explorer(""); break; case 2: uexWindow.prompt("提示", "輸入網絡圖片URL", "",["確定","取消"]); break; } } uexWindow.cbPrompt=function(opId,dataType,data){ if(dataType==1){ var d = eval("("+data+")"); if(d.num=="0"){ if(d.value.indexOf('http://')>-1){ imgurl=d.value; document.getElementById("imgid").src=imgurl; } else alert("網絡URL錯誤"); } } } uexCamera.cbOpen = function(opId,dataType,data){ if(dataType==0) { imgurl = data; document.getElementById("imgid").src=imgurl; } } uexFileMgr.cbExplorer = function(opId,dataType,data){ uexLog.sendLog(dataType); if(dataType==0){ uexLog.sendLog(data); imgurl = data; document.getElementById("imgid").src=imgurl; uexLog.sendLog(document.getElementById("imgid").src); } } //****************下載回調*************** uexDownloaderMgr.cbCreateDownloader=function(opId,dataType,data){ uexDownloaderMgr.download(dopCode,imgurl,inSavePath,0); setLog("開始下載圖片"); } uexDownloaderMgr.onStatus = function(opId,fileSize,percent,status){ if(status == 0) setLog("下載進度:"+percent+"%"); if(status == 1){ setLog("下載完成"); imgurl = inSavePath; uexDownloaderMgr.closeDownloader(dopCode); } if(status == 2){ setLog("下載出錯"); uexDownloaderMgr.closeDownloader(dopCode); uexFileMgr.deleteFileByPath(inSavePath); } } //****************************************** //****************上傳回調*************** uexUploaderMgr.cbCreateUploader = function(opId,dataType,data){ uexUploaderMgr.uploadFile(uopCode,imgurl,"filename",1); setLog("開始上傳圖片"); } uexUploaderMgr.onStatus = function(opId,fileSize,percent,serverPath,status){ if(status==0) setLog("上傳進度:"+percent+"%"); if(status == 1){ setLog("上傳完成"); uexUploaderMgr.closeUploader(uopCode); } if(status == 2){ setLog("上傳出錯"); } } //****************************************** } </script> </body> </html>
后台代碼:
using System; using System.Collections.Generic; using System.Linq; using System.Web; using System.IO; namespace SqsBusiness { /// <summary> /// abc1 的摘要說明 /// </summary> public class abc1 : IHttpHandler { public void ProcessRequest(HttpContext context) { context.Response.ContentType = "text/plain"; context.Response.Write("Hello World"); try { string from = context.Request.QueryString["from"]; string path = context.Server.MapPath("~/") + "upload"; if (from == "web") { context.Response.Write("<script>alert('1')</script>"); if (context.Request.Files.Count > 0) { context.Response.Write("<script>alert('2')</script>"); if (!Directory.Exists(path)) { Directory.CreateDirectory(path); } string fileName = Path.GetFileName(context.Request.Files["filename"].FileName); string end = fileName.Substring(fileName.Length - 4).ToLower(); if (end.Equals(".jpg") || end.Equals(".png") || end.Equals(".gif") || end.Equals(".mp4")) { context.Request.Files["filename"].SaveAs(path + "\\" + fileName); } } } if (from == "client") { if (context.Request.Files.Count > 0) { if (!Directory.Exists(path)) Directory.CreateDirectory(path); string fileName = Path.GetFileName(context.Request.Files["file"].FileName); string end = fileName.Substring(fileName.Length - 4).ToLower(); if (end.Equals(".jpg") || end.Equals(".png") || end.Equals(".gif") || end.Equals(".mp4")) { context.Request.Files["file"].SaveAs(path + "\\" + fileName); } } } } catch (Exception ex) { context.Response.Write("<script>alert('" + ex.Message + "')</script>"); } } public bool IsReusable { get { return false; } } } }
