首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > .NET > C# >

ajaxToolkit赶上asp:FileUpload

2013-11-26 
ajaxToolkit遇上asp:FileUpload在使用ajaxToolkit的时候,用UpdatePanel实现提交可以不刷新页面但是在用fil

ajaxToolkit遇上asp:FileUpload
在使用ajaxToolkit的时候,用UpdatePanel实现提交可以不刷新页面
但是在用fileupload的时候却失效了,何解?请各路英雄指点!
[解决办法]
ajaxToolkit赶上asp:FileUpload关闭电脑电源开关,然后重启电脑,再然后你结账,我拿分走人,ajaxToolkit赶上asp:FileUpload
[解决办法]
解决办法就是UpdatePanel中设置PostBackTrigger:
<asp:UpdatePanel ID="UpdatePanel1" runat="server">
<ContentTemplate>
<asp:FileUpload ID="FileUpload1" runat="server" />
<asp:Button ID="Button1" runat="server" Text="上传" OnClick="Button1_Click" />
</ContentTemplate>
<Triggers>
<asp:PostBackTrigger ControlID="Button1" />
</Triggers>
</asp:UpdatePanel>

而如果你又想在这个UpdatePanel上做点花样,比如加了一个asp:Panel, 可以通过按钮事件触发隐藏或显示的,你会发现FileUpload1并不能找到文件。。。

其实道理很简单,UpdatePanel中的内容是通过XmlHttp实时填充的,在你让他显示之前,查看页面源代码里面是空的。一个动态控件更新 普通数据没问题,但上传文件就不行了,我的解决办法是用普通div代替asp:Panel,并写了2个函数来动态发送控制脚本,按钮事件中只要调用该函数 即可:


<div id="Panel1"></div>

private void ShowPanel()
{
string script = "document.getElementById('Panel1').style.display='';";
ScriptManager.RegisterStartupScript(this.Page, this.GetType(), "ShowPanel", script, true);
}
private void ClosePanel()
{
string script = "document.getElementById('Panel1').style.display='none';";
ScriptManager.RegisterStartupScript(this.Page, this.GetType(), "ClosePanel", script, true);
}
[解决办法]
ajaxToolkit赶上asp:FileUpload
楼主看下是权限问题不

[解决办法]
不懂,坐等大神出来
[解决办法]

结账吧
[解决办法]
用最原生的来看,
你丫用fileupload的时候,提交的是文件流么?

热点排行