ASP.Net文件上传导致使用触发器在更新面板中回发

问题描述 投票:2回答:3

我有文件上传控件来使用更新面板上传个人资料图片。我已经将AsyncPostBackTrigger与更新面板一起使用,但页面仍然导致完全回发。

下面是我的代码内联。

<asp:UpdatePanel ID="pnlZerkerBasicProfile" runat="server">
<input type="file" id="myFile" name="myFile" class="file_input_hidden" onchange="javascript:FileUploadSubmit();" style="cursor: pointer;" />
<Triggers>
        <asp:AsyncPostBackTrigger ControlID="btnSaveProfilePicture" />
</Triggers>

有人可以帮忙吗?

asp.net file-upload updatepanel postback asyncfileupload
3个回答
0
投票

更改触发器回发触发器,因为当通过更新面板发生异步回发时,Request.Form.AllKeys中的文件上载不可用。看到这个:

http://www.codeproject.com/Articles/16945/Simple-AJAX-File-Upload


0
投票

这应该工作

<asp:ScriptManager ID="ScriptManager1" runat="server" EnablePartialRendering="true" />
    <div>
        <asp:UpdatePanel ID="UpdatePanel1" runat="server" UpdateMode="conditional">
            <Triggers>
                <asp:PostBackTrigger ControlID="Button1" />
            </Triggers>
            <ContentTemplate>
                 <asp:FileUpload ID="FileUpload1" runat="server" />
                 <asp:Button ID="Button1" runat="server"Text="Upload" OnClick="Button1_Click" />
            </ContentTemplate>
        </asp:UpdatePanel>
    </div>

0
投票

这段代码应该有效。它不会导致回发。

<asp:UpdatePanel ID="pnlZerkerBasicProfile" runat="server">
   <ContentTemplate>
      <input type="file" id="myFile" name="myFile" class="file_input_hidden" 
             onchange="javascript:FileUploadSubmit();" style="cursor: pointer;" />
      <asp:Button ID="btnSaveProfilePicture" runat="server"Text="Upload" 
           OnClick="btnSaveProfilePicture_Click" />
   </ContentTemplate>
   <Triggers>
       <asp:PostBackTrigger ControlID="btnSaveProfilePicture"  />
   </Triggers> 
</asp:UpdatePanel>
© www.soinside.com 2019 - 2024. All rights reserved.