CKEditor вставляет HTML в текстовую область - PullRequest
2 голосов
/ 02 апреля 2012

Я пытаюсь вставить текст в CKEditor, используя JavaScript.В настоящее время у меня есть этот скрипт:

function quote_<?php echo $row['pid']; ?>() {
        var stringContent = $(".content_<?php echo $row['pid']; ?>").html();
         $("#wysiwyg").val("[quote=<?php echo $row['author']; ?>]" + stringContent + "[/quote]");
         CKEDITOR.instances.wysiwyg.insertHtml('[quote=<?php echo $row['author']; ?>]' + stringContent + '[/quote]');
}

<textarea name="message" style="width:100%" tabindex="3" rows="10" id="wysiwyg">
</textarea>

HTML не вставляется в экземпляр 'wysiwyg', поэтому я не могу заставить это работать.

Есть идеи?

Ответы [ 3 ]

2 голосов
/ 02 апреля 2012

Эта строка:

CKEDITOR.instances.wysiwyg.insertHtml('[quote={$row['author']}]' + stringContent + '[/quote]');

одинарные кавычки вокруг «автора» не экранированы. Попробуйте:

CKEDITOR.instances.wysiwyg.insertHtml("[quote={$row['author']}]" + stringContent + "[/quote]");
1 голос
/ 09 декабря 2013

Это сработало для меня:

CKEDITOR.instances.TEXTATEA_ID.insertHtml('<p> html here. </p>');
0 голосов
/ 02 апреля 2012

Вы всегда можете встроить свой код JavaScript в файл .php следующим образом:

<?php

echo <<<JS

<script type='text/javascript'>
    function quote_{$row['pid']}() {
        var stringContent = $(".content_{$row['pid']}").html();
            $("#wysiwyg").val("[quote={$row['author']}]" + stringContent + "[/quote]");
        CKEDITOR.instances.wysiwyg.insertHtml('[quote={$row['author']}]' + stringContent + '[/quote]');
}
</script>
    <textarea name="message" style="width:100%" tabindex="3" rows="10" id="wysiwyg">
    </textarea>
JS;
?>

Кроме того, вы также можете использовать php-файлы, в которых вы сохраняете чистую (X) HTML-разметку, но когда вы дойдете до точки, где вы обычно эхо, просто сделайте это:

var stringContent = $(".content_"+<?= $row['pid']; ?>).html();
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...