TinyMCE编辑器setContent响应无法读取null属性

时间:2015-03-22 02:54:14

标签: php tinymce

我试图从MySQL添加内容到TinyMCE textarea。我使用了setContent(content),但textarea在页面刷新时没有填充内容,我收到以下错误消息:

  

未捕获的TypeError:无法读取null的属性'setContent'

<script src="__PUBLIC__/tinymce/tinymce.min.js"></script>
<script> tinymce.init({selector:'textarea',plugins:'code',content_css:"__PUBLIC__/custom_content.css"});
tinymce.get('textarea').setContent(content....);
</script>
<script src="__PUBLIC__/jquery-1.11.2.min.js"></script>

<textarea class="form-control" id="textarea" name="content" placeholder="content..." rows="30"></textarea>

我做错了什么?

2 个答案:

答案 0 :(得分:1)

晚了5年,但我自己偶然发现了这个线程,试图立即解决这个问题。

对于在这里绊脚的其他人来说,.get()必须是一个ID,没有井号。因此,.get('textarea')查找具有id =“ textarea”属性的文本区域,而不仅仅是一个textarea。

对我来说,以下工作有效:

tinymce.get('fldDescription').setContent("<p>test</p>");

但是以下内容却没有:

tinymce.get('#fldDescription').setContent("<p>test</p>");

这是TinyMCE 5。

答案 1 :(得分:0)

您过早地调用tinymce.*函数 - 当元素甚至不存在于DOM中时。将<script>放在<textarea>下方,然后重试。

或者,像这样包装你的tinymce.*调用(还要注意jQuery脚本放置):

<script src="__PUBLIC__/tinymce/tinymce.min.js"></script>
<script src="__PUBLIC__/jquery-1.11.2.min.js"></script>
<script>
$(document).ready(function() {
  tinymce.init({
    selector:'textarea',
    plugins:'code',
    content_css:"__PUBLIC__/custom_content.css"
  });
  tinymce.get('textarea').setContent(content....);
});
</script>