如何用c sharp设置tiny_mce内容

时间:2016-11-15 10:01:53

标签: c# tinymce

我有一个textarea tiny_mce,例如

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

            </textarea>

我想在页面加载中设置它。 如果我添加runat服务器,这将改为&#34;纯textarea&#34;这不是tiny_mce控制。 如何设置c sharp的内容?

1 个答案:

答案 0 :(得分:1)

请记住,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时,这不是必需的。

更新:如果刷新有时会使这项工作有时间问题 - 您可能会在编辑器初始化之前尝试使用TinyMCE API。如果您的目标是在加载TinyMCE时加载内容,您可以在TinyMCE配置中使用类似的内容:

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

在初始化编辑器之前不会调用此函数,因此您可以确保setContent()之类的API在此时起作用。