一、Aspx页面:
<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="FileUploadDemo.aspx.cs" Inherits="WebApplication1.FileUploadDemo" %> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head id="Head1" runat="server"> <title></title> <style type="text/css"> .ddtop{ width:98%; height:30px; margin-top:5px; border:#EED97C 1px solid; margin-left:auto; margin-right:auto; margin-bottom:5px; background:#FFFCEB; font:"宋体"; font-size:14px; padding-left:10px; padding-top:10px;} input{border-left:1px solid #333;border-top:1px solid #333;border-bottom:1px solid #ccc;border-right:1px solid #ccc;} .button{ cursor:pointer; background-color:#1481E6;border:1px solid #fff;text-align:center;color:#fff;line-height:19px;} .heigth_22{ height:22px;} .width_70{ width:70px;} </style> <script type="text/javascript"> function setUpFileText(obj) { var fileName = getFullPath(obj); document.getElementById("upFileText").value = fileName; } function getFullPath(obj) { if (obj) { // IE if (window.navigator.userAgent.indexOf("MSIE") >= 1) { obj.select(); return document.selection.createRange().text; } // Firefox else if (window.navigator.userAgent.indexOf("Firefox") >= 1) { if (obj.files) { return obj.files.item(0).name; } } // Chrome else if (window.navigator.userAgent.indexOf("Chrome") >= 1) { if (obj.files) { return obj.files[0].name; } } return obj.value; } } </script> </head> <body> <form id="form1" runat="server"> <div class="ddtop"> <div> <span><input type="text" id="upFileText" name="upFileText" readonly="readonly" /></span> <span style="position: absolute; z-index: 2; cursor: pointer;"> <asp:FileUpload ID="fileUpload" runat="server" CssClass="width_70 heigth_22" Style="filter: alpha(opacity=0); opacity: 0; cursor: pointer;" onchange="setUpFileText(this)" accept="image/*" /> <asp:Button ID="btnOk" runat="server" Text="确定" CssClass="button width_70 heigth_22" OnClick="btnOk_Click" /> </span> <span style="position: absolute; z-index: 1; cursor: pointer; height: 25px;"> <input type="button" name="btnUploadFile" id="btnUploadFile" value="上傳檔案" class="button width_70 heigth_22" /> </span> </div> </div> </form> </body> </html>
二、Aspx后台代码:
using System; using System.Collections.Generic; using System.Linq; using System.Web; using System.Web.UI; using System.Web.UI.WebControls; using System.IO; namespace WebApplication1 { public partial class FileUploadDemo : System.Web.UI.Page { protected void Page_Load(object sender, EventArgs e) { } protected void btnOk_Click(object sender, EventArgs e) { if (this.fileUpload.HasFile) { string fileName = this.fileUpload.PostedFile.FileName; // 客户端文件路径 string extension = System.IO.Path.GetExtension(fileName); if (extension.ToLower() != ".jpg" && extension.ToLower() != ".png") { ScriptManager.RegisterStartupScript(this, this.GetType(), "msg", "alert('只允许jpg 和 png!');", true); return; } string pathBase = "D:\UploadFile"; if (!Directory.Exists(pathBase)) Directory.CreateDirectory(pathBase); string webFilePath = Path.Combine(pathBase, fileName); // 数据库保存文件路径(相对全路径) this.fileUpload.SaveAs(webFilePath); // 使用 SaveAs 方法保存文件 ScriptManager.RegisterStartupScript(this, this.GetType(), "msg", "alert('上傳成功,我們會盡快進行核對!');", true); } } } }