2015-08-23 2 views
1

Я использую последний полный CKEditor (4.5.3) с включенным стилем Office2013.Обратный вызов UploadFile не запускается в CKEditor

Я добавил опцию filebrowserImageUploadUrl здесь:

CKEDITOR.replace('news_content' , 
      { 
       "filebrowserImageUploadUrl": "/path/to/script.php" 
      }); 

Когда изображение загружено, подкрепленные возвращает правильную HTML и заголовки к CKEditor, но то, что он делает - просто показывает, что JavaScript код и фактически не спусковым механизмом, который , Если я скопирую эту JS в консоль браузера (Chrome) - она ​​работает (переключает вкладку на первую и вводит изображение).

прилагается скриншот. Что я пропустил?

enter image description here

PS> Первый аргумент берется из запроса, когда файл загружается, так что в этом случае это = 1 (это не проблема :))

+1

Любой шанс ответ отправляется с неправильными заголовками , как обычная/текст принудительно и т. д.? –

+0

Ну, я пробовал с установкой явно «text/html», никакого результата. У меня есть возможное решение. Будет проверяться сегодня вечером. –

+0

Ну, честно говоря, Wiktor, я снова проверил заголовки и, возможно, изоляция сошла с ума, это дело. Я явно устанавливал заголовки в plain/text вместо text/html. Вот почему open source и работает в сотрудничестве - камни! Благодаря :) –

ответ

0

Как догадались @ Wiktor проблема заключалась в установке правильных заголовков. Я был почти там, устанавливая неправильные заголовки.

Правильные заголовки, очевидно: «текст/html» (не «обычный/текст», он признает его как текст в данном случае)

$uploadResponse = new Response(); 
    $uploadResponse->headers->set('Content-type', 'text/html'); 

    $content = "<script type=\"text/javascript\">\n"; 
    $content .= "window.parent.CKEDITOR.tools.callFunction(" . $funcNum . ", '/uploads/news_image/" . $response['uploadedName'] . "', '');\n"; 
    $content .= "</script>"; 

    $uploadResponse->setContent($content); 
Смежные вопросы