Analytics

2013年9月17日 星期二

[ASP.NET]解決 在UpdatePanel裡放FileUpload控制項卻無法正常上傳檔案 (FileUpload controls in place to solve the UpdatePanel can not upload files in normal)


問題
UpdatePanel非常方便的讓我們做到非同步的效果,但卻在裡面加入FileUpload控制項時,卻無法正常上傳檔案!!如下:
<asp:UpdatePanel ID="UpdatePanel1" runat="server">
    <ContentTemplate>
        <asp:FileUpload ID="fileUpload1" runat="server" />
        <asp:Button ID="btnUpload" runat="server" Text="Upload" OnClick="btnUpload_Click" />
    </ContentTemplate>
</asp:UpdatePanel>
原因是因為預設上,若UpdatePanel沒有設定Triger條件下,預設都是採用
AsyncPostBackTrigger(非同步方式),而像UploadFile這類控制項要將檔案傳回時,則需要採用
PostBackTrigger



解決方法
<asp:UpdatePanel ID="UpdatePanel1" runat="server">
 <ContentTemplate>
  <asp:FileUpload ID="fileUpload1" runat="server" />
  <asp:Button ID="btnUpload" runat="server" Text="Upload" OnClick="btnUpload_Click" />
 </ContentTemplate>
 <Triggers>
      <asp:PostBackTrigger ControlID="btnUpload"  />
 </Triggers>
</asp:UpdatePanel>

沒有留言:

熱門文章