更新面板和fileupload控件中的asp.net提交按钮

时间:2013-10-16 16:43:30

标签: c# asp.net

我有3个文件上传控件,人们上传csv文件。如果我的提交按钮不在更新面板中,则文件上传后面的代码中包含文件,一切正常。但是,我希望我的更新面板中的提交按钮基于表单上的一些其他控件我通过更新面板启用/禁用按钮。这种启用和禁用工作正常,但现在在按钮单击代码后面,即使选择了csv文件,文件上传控件也始终具有空值。

为什么即使选择了文件,我的提交按钮周围的更新面板也会导致文件上传控件中没有任何内容?

所以我在页面上有一个FileUpload控件,如:

<asp:FileUpload ID="file1" runat="server" />

我在更新面板中有一个提交按钮,如:

<asp:UpdatePanel ID="pnlSubmitButton" runat="server" UpdateMode="Conditional">
  <ContentTemplate>
      <asp:Button ID="button1" runat="server" Test="Submit" onclick="button1_Click" />
  </ContentTemplate>
</asp:UpdatePanel>

在我的代码后面的按钮点击事件

protected void button1_Click(object sender, EventArgs e)
{
    // file1.FileName is empty even though I did select a file
}

如果我删除按钮文件周围的更新面板,则单击按钮单击中的文件名

1 个答案:

答案 0 :(得分:3)

据我所知,asp:FileUpload在UpdatePanel异步触发器下不起作用。您需要在回发后触发器下设置上传按钮,以使其正常工作。像这样:

<triggers>

<postbacktrigger controlid="btnSubmit"/>
</triggers>
相关问题