AsyncFileUpload с HtmlEditorExtender выдает ошибку проверки

Когда у меня есть HTMLEditorExtender на странице (с введенным HTML) и я пытаюсь загрузить файл с помощью элемента управления AJAX AsyncFileUpload, я иногда получаю ошибку проверки:

введите здесь описание изображения

Я думаю, что сузил его - он выдает эту ошибку только тогда, когда загрузка после обратной передачи - с html, введенным в TextBox.

Вот пример:

<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.

Кто-нибудь может воспроизвести это?

Как заставить два элемента управления работать вместе?


person Rivka    schedule 07.03.2013    source источник
comment
@jason the регулярный Клиент обнаружил потенциально опасное значение request.form ... ошибка проверки.   -  person Rivka    schedule 08.03.2013


Ответы (1)


Попробуйте обработать событие uploadStarted элемента управления AjaxFileUpload на стороне клиента и принудительно закодировать html расширителя HtmlEditorExtender:

<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" />
person Yuriy Rozhovetskiy    schedule 09.03.2013