我正在尝试使用javascript将文本插入CKEditor。我目前有这个脚本:
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'中,所以我无法使其工作。
有什么想法吗?
答案 0 :(得分:2)
这一行:
CKEDITOR.instances.wysiwyg.insertHtml('[quote={$row['author']}]' + stringContent + '[/quote]');
“作者”周围的单引号不会被转义。尝试:
CKEDITOR.instances.wysiwyg.insertHtml("[quote={$row['author']}]" + stringContent + "[/quote]");
答案 1 :(得分:1)
这对我有用:
CKEDITOR.instances.TEXTATEA_ID.insertHtml('<p> html here. </p>');
答案 2 :(得分:0)
您始终可以将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;
?>
另外,您也可以使用保存纯(X)HTML标记的php文件,但是当您到达通常回显的位置时,只需执行此操作:
var stringContent = $(".content_"+<?= $row['pid']; ?>).html();