在asp:UpdatePanel控件中直接使用FileUpload,服务端是无法找到上传文件的。
只要在<Trigger>中添加button就可以解决这个问题
<asp:UpdatePanel ID="UpdatePanel2" runat="server" UpdateMode="Conditional">
<ContentTemplate>
<table border="1" cellpadding="0" cellspacing="0" class="tableframe" width="100%">
<tr>
<td class="titlebar" style="background-color: #cce4f7; width: 100%; height: 30px"
colspan="6" valign="middle" align="center">
Order of display</td>
</tr>
<tr>
<td style="width: 15%; height: 27px; background-color: #cce4f7;" valign="middle"
align="right">
Manually re-arrange:</td>
<td align="left" colspan="1" style="width: 35%">
<asp:TextBox ID="tbNum" runat="server" Width="30px" Height="17px" MaxLength="2"
TabIndex="13">0</asp:TextBox>
<ajaxToolkit:FilteredTextBoxExtender ID="ft1" runat="server" FilterType="Custom, Numbers"
TargetControlID="tbNum">
</ajaxToolkit:FilteredTextBoxExtender>
</td>
<td align="right" colspan="1" style="width: 15%; height: 27px; background-color: #cce4f7">
Data:</td>
<td align="left" colspan="3" style="width: 35%">
<asp:FileUpload ID="FileUpload1" runat="server" Height="20px" Width="95%" TabIndex="14" /></td>
</tr>
<tr>
<td align="center" colspan="6" style="height: 30px">
<asp:Button ID="Button1" runat="server" CssClass="submit" Height="20px" OnClientClick="return upDataFile()"
TabIndex="15" Text="Add" Width="50px" OnClick="Button1_Click" /></td>
</tr>
</table>
</ContentTemplate>
<Triggers>
<asp:PostBackTrigger ControlID="Button1" />
</Triggers>
</asp:UpdatePanel>
AJAX UpdatePanel不能放置FileUpload
正在开发一个网页系统,想全面应用AJAX技术,但是今天却发现这个问题,点击UpdatePanel里面的按钮后,老是返回得到FileUpload1.HasFile=False.
如果使用iFrame的话,不能够实现我最后想要达到的效果;另一种方法需要修改Web.config文件,看起来似乎挺麻烦的(应该不需要下载最新的AJAX吧,因为我就是在VS2008里开发.Net3.5 FrameWork的Web应用)。
为了赶进度,得先把这个问题放一边了,回来再来解决。
目前暂且时把ScriptManager的EnablePartialRender置为False解决之。
用PostBackTrigger不行,因为按钮是放在里面一个AccordionPane里的。