Я изо всех сил пытаюсь получить данные HTML из sourcedialog в ckeditor.CKEditor sourcedialog get html data
Я могу получить HTML-данные из самого редактора, никаких проблем. Но получить его из диалога - это боль в заднице.
Я хочу показать предварительный просмотр HTML, введенный в диалоговом окне источника, и для этого мне нужны данные HTML, а не редактор, но из диалогового окна, редактируемого пользователем.
CKEDITOR.on('dialogDefinition', function(ev) {
var editor = ev.editor;
var dialog = ev.data.definition.dialog;
var dialogName = ev.data.name;
var dialogDefinition = ev.data.definition;
var editorName = ev.editor.name;
var htmlData = CKEDITOR.instances[editorName].getData();
if (dialogName == 'sourcedialog') {
dialog.on('show', function() {
//console.log(this.getSize().width);
console.log(this);
$("#sourcePreview").css("display", "block");
$("#sourcePreview").html(htmlData);
$(".cke_dialog_ui_input_textarea textarea").on("keyup", function() {
//var dialogElementUpdated = dialogObj.getElement().getFirst();
//console.log(editorData);
//$("#sourcePreview").html(htmlDataUpdated);
});
});
dialog.on('hide', function() {
console.log('dialog ' + dialogName + ' closed.');
$("#sourcePreview").css("display", "none");
});
}
});
Это то, что я до сих пор (жаль всех console.logs, это работа в процессе). Я, очевидно, получаю данные HTML из varible: htmlData, но это из редактора, а не из диалога.
Ничего себе не ожидал получить ответ, спасибо человеку! ;) – MartinDK81
Рад, что я мог бы дать запоздалый ответ. Мне довелось сражаться с CKEditor и sourcedialog так же, как и вы, и наткнулся на ваш вопрос. Если мой ответ (правильно) касается вашего вопроса, нажмите галочку рядом с ним. Благодаря! – Paul