带有HtmlEditorExtender的AsyncFileUpload会引发验证错误

时间:2013-03-07 17:19:20

标签: asp.net ajaxcontroltoolkit asyncfileupload htmleditorextender

当我在页面上有一个HTMLEditorExtender(输入了HTML),并尝试使用AJAX AsyncFileUpload控件上传文件时,我得到验证错误有时

enter image description here

我想我已经缩小了它 - 它只会在回发后上传时抛出此错误 - 在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" />

重新制作:

  1. 在文本框中输入html。

  2. 点击回发按钮。

  3. 尝试上传图片。

  4. 我确实在HTMLEditorExtender上启用了清洁剂。

    有人可以重复这个吗?

    如何让两个控件协同工作?

1 个答案:

答案 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" />