我使用LocalStorage将文本从第1页传递到第2页。 Page2 textarea使用TinyMCE编辑器。我在Tiny网站上发现了这个功能,我认为这是为此目的而设计的。但是,我是Javascript的新手,无法使其正常运行。有帮助吗?
我的Html:
<div class=" form-group">
<div class="col-sm-2 col-md-2"><label for="work">Scope of Work:</label></div>
<div class="col-sm-10 col-md-10"><textarea id="wo_scope" class="form-control tinymce " rows="5" placeholder="Required / Maximum 500 characters" name="work" cols="50"></textarea></div>
</div>
答案 0 :(得分:1)
如果您想在页面加载时将内容加载到TinyMCE中,您可以使用setContent
函数来执行此操作...但您需要确保在尝试使用{{1}之前初始化TinyMCE }。
最好的方法是将代码加载到TinyMCE的配置对象中。例如:
setContent
使用tinymce.init({
...
setup: function (editor) {
editor.on('init', function () {
var dataFromLS = <code to get the HTML from local storage>;
this.setContent(dataFromLS);
});
}
...
});
的基本方法是将HTML传递给方法的唯一参数。如果您拥有本地存储中的数据,只需先将其抓取到JS变量中,然后执行以下操作:
setContent()
请注意,在上面提供的init示例中,您可以将编辑器实例称为var dataFromLS = <code to get the HTML from local storage>;
tinymce.get('wo_scope').setContent(dataFromLS);
。您也可以根据您用TinyMCE替换的this
的ID来获取它。一个更完整(正确)的例子可以做这样的事情:
<textarea>
tinymce.get('wo_scope').setContent(datafromLS);
方法适用于TinyMCE的特定实例,因此您需要拥有一个才能调用setContent()
。我上面的示例显示了使用setContent()
获取该实例的get()
和初始化的两种方法。
注意:在上面的一条评论中,您使用this
- 只有在您点击TinyMCE编辑器实例时才有效 - 这使得它成为&#34;活跃的&#34;编辑。如果你在页面加载时这样做,你几乎肯定还没有活跃的编辑器。