在ASP.NET 中關於檔案的上傳有很多種;所謂的上傳有有兩種含意:第一種:就是說把檔案儲存在資料庫;第二種就是儲存在
一個指定的檔案夾下;
今天給大家介紹一所很簡單多檔案上傳方式;通過JQ Plugin外掛程式的形式來達到上傳檔案的效果;這種檔案上傳的方式,簡單,靈活
只是能過屬性的配置就可以完成上傳大部分的工作:
項目目錄列表:
第一步:引入Jquery相關的JS檔案:
<script src="JQuery/jquery-1[1].3.2-vsdoc2.js" type="text/javascript"></script>--這是VS2008智能感知的一個JS檔案 <script src="JQuery/jquery-1[1].3.2.js" type="text/javascript"></script>---這裡JQ中的內庫檔案,版本是1.3.2 <script src="JQuery/jquery.MultiFile.js" type="text/javascript"></script>
----這是JQ Plugin 檔案
註:以上三個檔案是除第一個外,都必須引用到你的分頁檔中,程式才能正確的運行;
第二步:添加FileUpload上傳檔案控制項和一個上傳Button;
<fieldset style="height: 94px; width: 359px"> <legend>JQuery 多檔案上傳</legend> <asp:FileUpload ID="UpFile" runat="server" class="multi" maxlength="2" /> <asp:Button ID="btnUpload" runat="server" Text="UpLoad All"
OnClick="btnUpload_Click" /> </fieldset>
說明:這時可以對FileUpload上傳控制項配置屬性,屬性說明:
屬性名稱 |
說明 |
用例 |
| Class |
上傳類型 |
class=multi |
| maxlength |
上傳檔案的個數 |
maxlength=3 |
| accept |
接受上傳檔案類型 |
accept=jpg|rar |
| |
|
|
還可以自訂上傳檔案清單的樣式,在這裡我就不一一舉出來,
第三步:編寫後上傳檔案的代碼:
protected void btnUpload_Click(object sender, EventArgs e) { try { HttpFileCollection hfc = Request.Files; for (int i = 0; i < hfc.Count; i++) { HttpPostedFile hpf = hfc[i]; if (hpf.ContentLength > 0) { hpf.SaveAs(Server.MapPath("MyFile") + "\\" + System.IO.Path.GetFileName(hpf.FileName)); Response.Write("<script>alert('檔案上傳成功!')</script>"); } } } catch (Exception ex) { throw ex; } }
第四步:運行效果:
從運行效果可以看出,當你上傳的檔案數等於你屬性設定的大小時,上傳控制項的瀏覽將變為不可有狀態;
這大大給我們簡化了寫代碼時間;
雖然這篇文章很簡單,但希望對大家在以後的項目中有所協助;
園子裡有沒有朋友去研究過QQ空間裡面的上傳圖片這個控制項,是怎麼做的,我一直想去研究,沒有找到相
關的資料,希望園子的朋友提供一點關於QQ空間圖片上傳的資料,小弟在這裡萬分感謝: