当我在页面上有一个HTMLEditorExtender(输入了HTML),并尝试使用AJAX AsyncFileUpload控件上传文件时,我得到验证错误有时:
我想我已经缩小了它 - 它只会在回发后上传时抛出此错误 - 在TextBox中输入html。
以下是一个例子:
<asp:ScriptManager ID="ScriptManager1" runat="server">
</asp:ScriptManager>
<asp:Button ID="Button1" runat="server" Text="PostBack" />
<asp:TextBox ID="txtBannerHTML" runat="server" Height="130px" Width="100%" TextMode="MultiLine" />
<asp:HtmlEditorExtender ID="txtBannerHTML_HtmlEditorExtender" runat="server" DisplaySourceTab="True"
Enabled="True" TargetControlID="txtBannerHTML">
</asp:HtmlEditorExtender>
<asp:AsyncFileUpload ID="AsyncFileUpload3" runat="server" />
重新制作:
在文本框中输入html。
点击回发按钮。
尝试上传图片。
我确实在HTMLEditorExtender上启用了清洁剂。
有人可以重复这个吗?
如何让两个控件协同工作?
答案 0 :(得分:1)
尝试在客户端处理AjaxFileUpload控件的uploadStarted事件并强制编码HtmlEditorExtender扩展器的html:
<script type="text/javascript" >
function uploadStarted(sender, args){
var editor = $find("<%= txtBannerHTML_HtmlEditorExtender.ClientID %>");
editor._editableDiv_submit();
}
</script>
<asp:ScriptManager ID="ScriptManager1" runat="server">
</asp:ScriptManager>
<asp:Button ID="Button1" runat="server" Text="PostBack" />
<asp:TextBox ID="txtBannerHTML" runat="server" Height="130px" Width="100%" TextMode="MultiLine" />
<asp:HtmlEditorExtender ID="txtBannerHTML_HtmlEditorExtender" runat="server" DisplaySourceTab="True"
Enabled="True" TargetControlID="txtBannerHTML">
</asp:HtmlEditorExtender>
<asp:AsyncFileUpload ID="AsyncFileUpload3" runat="server" OnClientUploadStarted="uploadStarted" />