当我把它放在更新面板中时,不会出现文件上传。我需要在更新面板中添加它,因为FileUpload.HasFile始终返回false
我的HTML代码:
<tr>
<asp:UpdatePanel ID="UpdatePanel1" runat="server">
<ContentTemplate>
<td>
<asp:Button ID="btnUpload" runat="server" onclick="Button1_Click"
Text="Upload" />
</td>
<asp:FileUpload ID="FUCivilID" runat="server" />
<asp:Image ID="imgViewFile" runat="server" Height="60px"
Width="275px" />
</ContentTemplate>
<Triggers>
<asp:AsyncPostBackTrigger ControlID="Button1_Click" EventName="Click" />
</Triggers>
</asp:UpdatePanel>
</tr>
上传按钮代码:
if (FUCivilID.HasFile)
{
string ext = Path.GetExtension(FUCivilID.FileName);
if (ext == ".jpg" || ext == ".png" || ext == ".gif")
{
imgViewFile.ImageUrl = Server.MapPath("~/CivilIds/" + FUCivilID.FileName);
FUCivilID.SaveAs(MapPath("~/CivilIds/" + FUCivilID.FileName));
imgViewFile.ImageUrl = "~/CivilIds/" + FUCivilID.FileName;
}
在页面加载中:
Page.Form.Attributes.Add("enctype", "multipart/form-data");
答案 0 :(得分:0)
fileUpload控件有一些updatePanel(Microsoft)的问题,试着改变你的
<asp:AsyncPostBackTrigger ControlID="Button1_Click" EventName="Click" />
表示
<asp:PostBackTrigger ControlID="Button1_Click" EventName="Click" />
在UpdatePanel中使用FileUpload或HtmlInputFile控件 控制,设置提交文件的回发控制为 面板的PostBackTrigger控件。 FileUpload和 HtmlInputFile控件只能在回发场景中使用。
还有其他选择,我已成功使用FUA