代码之家  ›  专栏  ›  技术社区  ›  Rivka

使用HtmlEditorExtender的AsyncFileUpload引发验证错误

  •  1
  • Rivka  · 技术社区  · 13 年前

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

    enter image description here

    我想我已经缩小了范围——它只会在上传时抛出这个错误 回邮后 -在文本框中输入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. 尝试上传图像。

    我确实在HTMLEditorExtender上启用了消毒程序。

    有人能反驳吗?

    如何使这两个控件协同工作?

    1 回复  |  直到 13 年前
        1
  •  1
  •   Yuriy Rozhovetskiy    13 年前

    尝试在客户端处理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" />
    
    推荐文章