如何使用c sharp设置tiny_mce内容?

本文关键字:mce 内容 tiny 设置 何使用 sharp | 更新日期: 2023-09-27 18:17:53

我有一个textarea tiny_mce,如

<textarea id="Textarea1"  name="abc" rows="15" cols="80" style="width: 80%">
            </textarea>

我想在页面加载中设置它。如果我添加runat服务器,则更改为"纯文本区域",而不是tiny_mce控制。我如何从c sharp设置内容?

如何使用c sharp设置tiny_mce内容?

请记住,TinyMCE是一个基于javascript的编辑器,100%在客户端运行——没有服务器端api与TinyMCE通信。

加载内容的API是一个运行在浏览器中的JavaScript API:

https://www.tinymce.com/docs/api/tinymce/tinymce.editor/setcontent

如果你想使用这个API,你需要将数据从服务器传递到浏览器,然后用该数据调用setContent()。您可以将数据放入JavaScript变量中,在页面加载时调用AJAX来获取数据—您有几种选择。

如果你想在服务器端这样做,唯一的选择是将HTML放在<textarea>标签内。比如:

<textarea>
    &lt;p&gt;text &amp;lt; text&lt;/p&gt;
</textarea> 

这种方法的一个主要复杂之处在于,您放置在<textarea>中的HTML需要像我上面的例子那样进行转义。当使用setContent() API时,这不是必需的。

UPDATE:如果刷新有时使此工作,您可能有一个时间问题-您可能试图在编辑器初始化之前使用TinyMCE api。如果您的目标是在加载TinyMCE时加载内容,则可以在TinyMCE配置中使用如下内容:

setup: function (editor) {
  editor.on('init', function () {
      // Your AJAX call to get the content
      this.setContent(variableWithTheContent);
  });
}

这个函数在编辑器初始化之前不会被调用,所以你可以确保像setContent()这样的api在那个时候可以工作。