HtmlInputFile 伺服器控制項宣告式語法
建立伺服器端控制項,使其對應至 <input type=file> HTML 項目,並允許您將檔案上載到伺服器。
<input
Type="File"
EnableViewState="False|True"
Id="string"
Visible="False|True"
OnDataBinding="OnDataBinding event handler"
OnDisposed="OnDisposed event handler"
OnInit="OnInit event handler"
OnLoad="OnLoad event handler"
OnPreRender="OnPreRender event handler"
OnUnload="OnUnload event handler"
runat="server"
/>
備註
使用 HtmlInputFile 控制項,對 HTML <input type=file> 項目進行設計程式。 您可以使用 HtmlInputFile 控制項,設計出能讓使用者從瀏覽器將二進位或文字檔案上載到指定 Web 伺服器目錄的網頁。 在所有 HTML 3.2 (含) 以後版本的 Web 瀏覽器中可以進行檔案上載。
範例
下列範例示範簡單的檔案上載案例。 程式碼的第一個區段為網頁定義事件處理常式。 使用者在表單上按一下 Upload 按鈕時,網頁便會顯示檔案名稱、內容長度和內容數量 (以位元組為單位),檔案本身則會上載到伺服器上的 UploadedFiles 目錄。
注意事項 |
---|
您必須將表單的 enctype 屬性設為 "multipart/form-data"。 |
表單的程式碼會實作一個 HtmlForm 控制項、一個 HtmlInputFile 控制項、一個 HtmlInputButton 控制項和四個 HtmlGenericControls (一個 <div> 項目和三個 <span> 項目,每個項目都在其開頭標記中具有 runat="server" 屬性/值組)。
注意事項 |
---|
若要在網頁上檢視上載之檔案的資訊,就必須將由 HtmlGenericControl 繼承自 Control 類別的 Visible 屬性,在事件處理常式程式碼中設定為 true。 |
<%@ Page Language="VB" AutoEventWireup="True" %>
<!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>
<title>HtmlInputFile Control</title>
</head>
<script runat="server">
Sub UploadBtn_Click(Sender as Object, e as EventArgs)
' Display information about posted file
FileName.InnerHtml = MyFile.PostedFile.FileName
MyContentType.InnerHtml = MyFile.PostedFile.ContentType
ContentLength.InnerHtml = cStr(MyFile.PostedFile.ContentLength)
FileDetails.Visible = True
' Save uploaded file to server
MyFile.PostedFile.SaveAs("c:\Uploadedfiles\uploadfile.txt")
End Sub
</script>
<body>
<form id="Form1" action="fileupload.aspx"
method="post"
enctype="multipart/form-data"
runat="server">
<h1>ASP.NET File Upload Example</h1>
Select File To Upload to Server:
<input id="MyFile"
type="file"
runat="server" />
<br /><br />
<input id="Submit1" type="submit"
value="Upload!"
onserverclick="UploadBtn_Click"
runat="server" />
<br /><br /><br />
<div id="FileDetails"
visible="false"
runat="server">
FileName: <span id="FileName" runat="server"/> <br />
ContentType: <span id="MyContentType" runat="server"/> <br />
ContentLength: <span id="ContentLength" runat="server"/>bytes
<br />
</div>
</form>
</body>
</html>
<%@ Page Language="C#" AutoEventWireup="True" %>
<!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>
<title>HtmlInputFile Control</title>
</head>
<script runat="server">
void UploadBtn_Click(Object sender, EventArgs e)
{
// Display information about posted file
FileName.InnerHtml = MyFile.PostedFile.FileName;
MyContentType.InnerHtml = MyFile.PostedFile.ContentType;
ContentLength.InnerHtml =
MyFile.PostedFile.ContentLength.ToString();
FileDetails.Visible = true;
// Save uploaded file to server
MyFile.PostedFile.SaveAs("c:\\Uploadedfiles\\uploadfile.txt");
}
</script>
<body>
<form id="Form1" action="fileupload.aspx"
method="post"
enctype="multipart/form-data"
runat="server">
<h1>ASP.NET File Upload Example</h1>
Select File To Upload to Server:
<input id="MyFile"
type="file"
runat="server" />
<br /><br />
<input id="Submit1" type="submit"
value="Upload!"
onserverclick="UploadBtn_Click"
runat="server" />
<br /><br /><br />
<div id="FileDetails"
visible="false"
runat="server">
FileName: <span id="FileName" runat="server"/> <br />
ContentType: <span id="MyContentType" runat="server"/> <br />
ContentLength: <span id="ContentLength" runat="server"/>bytes
<br />
</div>
</form>
</body>
</html>