Загрузка изображения на CKEditor & ASP.NET 4, ответ на ошибку загрузки iframe - PullRequest
0 голосов
/ 15 марта 2012

Я использую редактор wkeiwyg CKEditor с опцией загрузки изображения.Я настроил JS, установив атрибут настроек 'filebrowserUploadUrl'.Я написал некоторый код для обработки загрузки, и все это прекрасно работает.Проблема возникает, когда я пытаюсь отправить ответ обратно в iframe загрузки CKEditor.Я просто пытаюсь отправить тег сценария JS обратно с этой строкой JS:

window.parent.CKEDITOR.tools.callFunction( " + CKEditorFuncNum + ", '" + relativePath + "' );

Что нужно сделать, это заполнить поле URL и показать предварительный просмотр изображения на вкладке «Информация об изображении» на изображении.неожиданно возникнуть.Это не работает, и если я просматриваю источник iframe на вкладке «Загрузка», тег JS-скрипта кодируется и выглядит так:

<script type='text/javascript'> window.parent.CKEDITOR.tools.callFunction( 2, '/uploads/ducati-916-2.jpg' ); </script>

Я использую:

Response.Write(...) 

а также я пытался

Response.BinaryWrite(...)

выписать строку тега js.

Я не думал, что это нормальное поведение Response.Write (), но, возможно, егокодируется в другом месте.

Любой ключ, почему эта строка кодируется?Любая помощь здесь приветствуется.

Спасибо.Ian

Ответы [ 2 ]

1 голос
/ 15 марта 2012

Я думаю, что было бы лучше просто сделать CKEditorFuncNum и lativePath переменные-члены-члены и написать это на стороне клиента:

<script type="text/javascript">
  window.parent.CKEDITOR.tools.callFunction(
            <%= CKEditorFuncNum %>, '<%= relativePath  %>');
</script>

Hopeэто помогает!

0 голосов
/ 03 октября 2012

Было бы лучше иметь html в каком-либо виде, а затем передать 2 параметра в представление из контроллера, как описано в ответе выше.В моем случае, поскольку я создавал API-интерфейс JSON, а представления отсутствовали, модель представления просто кодировалась в формате json и отправлялась в качестве вывода, мне пришлось установить Response.ContentType = "application / json";

...