我有以下上传文件的代码:
<asp:Panel ID="pnlCauses" runat="server">
<asp:FileUpload ID="uplCauses" runat="server" />
<asp:Button runat="server" ID="btnUplCauses" Text="Upload" OnClick="btnUplCauses_Click" />
<asp:Label runat="server" ID="lblUplCausesStatus" Text="Upload status: " />
</asp:Panel>我使用了下面的代码,只允许pnlCauses刷新。
<rad:AjaxSetting AjaxControlID="btnUplCauses">
<UpdatedControls>
<rad:AjaxUpdatedControl ControlID="pnlCauses" />
</UpdatedControls>
</rad:AjaxSetting>但是似乎上传控件和Ajax不能一起工作。
有没有人能给我提个建议?我如何才能只允许面板刷新而不是完成页面?
发布于 2011-10-07 17:05:24
ASP.NET FileUpload无法使用AJAX调用上载文件。您必须强制回发请求,或者使用RadAsyncUpload之类的控件异步上载文件。
Telerik文档中有一个旧版Telerik ASP.NET控件的workaround,介绍了如何在RadAjaxPanel中禁用upload按钮AJAX调用:
<script type="text/javascript">
//on upload button click temporarily disables ajax to perform upload actions
function conditionalPostback(sender, args)
{
if(args.EventTarget == "<%= ButtonSubmit.UniqueID %>")
{
args.EnableAjax = false;
}
}
</script>
<rada:radajaxpanel runat="server" id="RadAjaxPanel1"
clientevents-onrequeststart="conditionalPostback">
<rad:radupload runat="server" id="RadUpload1" />
<asp:button id="ButtonSubmit" runat="server" text="Upload" />
</rada:radajaxpanel>https://stackoverflow.com/questions/7684579
复制相似问题