2009年3月29日 星期日

FancyUpload ASP.NET版

官方下載位置:http://digitarald.de/project/fancyupload/ 我是使用1.1版的

------準備檔案---------------------------------------
4個資料夾 「image」 「js」 「seiff」 「upload」
 「image」放3檔案: delete.png hoto_upload.png spinner.png
 「js」: FancyUpload.js FancyUpload_min.js
 「seiff」: Swiff.Base.js Swiff.Uploader.js Swiff.Uploader .swf
 「upload」上傳的圖片將置於此資料夾

另外準備兩個檔案 common.css mootools.js
------------------------------------------------------

------製作asp.net檔案-------------------------------
製作一個AspNet.aspx :
<%@ Page Language="C#" AutoEventWireup="true" CodeFile="AspNet.aspx.cs" Inherits="AspNet" %>

以及製作AspNet.aspx.cs:
using System;
using System.Collections;
using System.Configuration;
using System.Data;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.HtmlControls;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;

public partial class AspNet : System.Web.UI.Page
{
 protected void Page_Load(object sender, EventArgs e)
 {
  HttpPostedFile posttedFile = Request.Files["Filedata"];
  if (posttedFile != null){
   string name = posttedFile.FileName;
   posttedFile.SaveAs(Server.MapPath("~/upload/")+name);
  }
 }
}

其中
Server.MapPath("~/upload/")+name upload即上傳的資料夾 name為檔案名稱
---------------------------------------------------------

最後在官方修改官方範例JavaScript.htm
將原本<form action="upload.php" >改成<form action="AspNet.aspx" >

需注意的是JavaScript.htm中
<link rel="stylesheet" href="%3Cspan%20style="><link rel="stylesheet" href="common.css" type="text/css" media="screen" />
<script type="text/javascript" src="mootools.js"></script>
<script type="text/javascript" src="swiff/Swiff.Base.js"></script>
<script type="text/javascript" src="swiff/Swiff.Uploader.js"></script>
<script type="text/javascript" src="js/FancyUpload.js"></script>
上述檔案位置需正確

----------準備完成------------------------------------------
將所有檔案打包 傳送至支援asp.net的網頁空間中 開啟JavaScript.htm即可開始上傳檔案囉

Java Script語法

----------常用----------
alert("error"); 彈出警告視窗
confirm("OK?"); 確認視窗
document.write(); 輸出至html
typeof(); 變數型態 (undefined = 未定義)
windows.outerWidth; 目前瀏覽器顯示寬度
screen.width; 螢幕解析度寬度
scrollBy(x,y) 頁面捲軸捲動至x,y
document.body.style.overflow = "hidden"; 隱藏捲軸
document.MyForm.submit(); 表單MyForm送出
String.fromCharCode(event.keyCode); 將鍵盤值轉換成字元
document.Form1.myName.value; 表單Form1中 文字標籤myName 的值


----------其他----------
a = new Array(1,2,3); 矩陣
a陣列.concat(b陣列) 合併a b陣列
document.all["divId"].id 取得物件id
document.all["divId"].name 取得物件name
setTimeout(a(),1000) 每一秒執行一次a()
navigator.appName.toUpperCase(); 取得瀏覽器名稱
navigator.appVersion; 取得瀏覽器版本
navigator.userAgent.toUpperCase(); 取得有關使用者資訊 例如os


----------數值檢查篇----------
check = /.+@.+\..+/ /*email檢查*/
check = /[^0-9]/g /*數字檢查*/
check = /[^a-z|^A-Z]/g /*英文字檢查*/
check = /[^a-z]/gi /*英文字檢查2*/
check = /^\d{3}-\d{4}-\d{4}$|^d{10}$/ /*行動電話檢查 XXXX-XXX-XXX*/
物件.match( check );


----cookie篇---------
function saveDate() /*儲存cookie*/
{
theName = "Age"; /*儲存的變數*/
theValue = document.myFORM.age.valuel;
theDay = 7; /*保存七天*/
setDay = new Date(); /*目前時間*/
setDay.setTmee( setDay.getTime()+(theDay*1000*60*60*24)); /*+7天*/
expDay = setDay.toGMTString(); /*有效時間*/
document.cookie = theName + "=" + escape(theValue)+",expire=" + expDay;
}

function loadDate() /*讀取cookie*/
{
theDay= "";
theName = "Age=";
theCookie = document.cookie+";";
start = theCookie.indexof(theName);
if(start != -1)
{
end = theCookie.indexof(";",start);
theData = unescape(theCookie.suvstring(start+theName.length,end));
}
trture theData;
}


----變換連結圖片----
function swImg(img)
{
 if(document.image) { document.myIMG.src = img; }
}