1、asp 的上傳 有兩個突出問題:1. 文件上傳框風格和整個頁面風格不搭配。 2. 上傳時是整個頁面回發,和FineUI預設的AJAX風格也不搭。 2、fineui 的上傳 下麵來看看FileUpload的屬性: 1. ButtonText:按鈕文本。 1. ButtonOnly:是否只顯示按鈕, ...
1、asp 的上傳
<ext:PageManager ID="PageManager1" runat="server" EnableAjax="false" />
<asp:FileUpload ID="FileUpload1" runat="server"></asp:FileUpload>
<asp:Button ID="btnCloseWindow2" runat="server" Text="上傳文件" OnClick="btnCloseWindow2_Click"></asp:Button>
protected void btnCloseWindow2_Click(object sender, EventArgs e)
{
if (FileUpload1.HasFile)
{
FileUpload1.SaveAs(Server.MapPath("~/upload/" + FileUpload1.FileName));
}
Alert.ShowInTop("文件上傳成功!");
}
有兩個突出問題:1. 文件上傳框風格和整個頁面風格不搭配。 2. 上傳時是整個頁面回發,和FineUI預設的AJAX風格也不搭。
2、fineui 的上傳
<ext:SimpleForm ID="SimpleForm1" BodyPadding="5px" runat="server" EnableBackgroundColor="true"
ShowBorder="True" Title="表單" Width="350px" ShowHeader="True">
<Items>
<ext:TextBox runat="server" Label="用戶名" ID="tbxUseraName" Required="true" ShowRedStar="true">
</ext:TextBox>
<ext:FileUpload runat="server" ID="filePhoto" EmptyText="請選擇一張照片" Label="個人頭像" Required="true"
ShowRedStar="true">
</ext:FileUpload>
<ext:Button ID="btnSubmit" runat="server" OnClick="btnSubmit_Click" ValidateForms="SimpleForm1"
Text="提交">
</ext:Button>
</Items>
</ext:SimpleForm>
protected void btnSubmit_Click(object sender, EventArgs e)
{
string fileName = DateTime.Now.Ticks.ToString() + "_" + filePhoto.FileName;
if (filePhoto.HasFile)
{
filePhoto.SaveAs(Server.MapPath("~/upload/" + fileName));
}
下麵來看看FileUpload的屬性:
- ButtonText:按鈕文本。
- ButtonOnly:是否只顯示按鈕,不顯示只讀輸入框。
- ButtonIcon:按鈕圖標。
- ButtonIconUrl:按鈕圖標地址。
- PostedFile:上傳的文件。
- HasFile:是否包含文件。
- FileName:上傳文件名。
還有一個重要的方法 SaveAs,用來將上傳的文本保存到伺服器上
3、實例
<f:FileUpload ID="SelectFile" runat="server" Label="更新文件" ></f:FileUpload>
string UploadFilePath = Server.MapPath("~/APP/");
//完整路徑名稱
string FullFileName = UploadFilePath + SelectFile.FileName;
if (System.IO.File.Exists(FullFileName))
{
System.IO.File.Delete(FullFileName);
}
SelectFile.SaveAs(FullFileName);