首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >tinymce不会获取(id)或setcontent

tinymce不会获取(id)或setcontent
EN

Stack Overflow用户
提问于 2013-05-26 06:15:26
回答 3查看 3.4K关注 0票数 0

这是我正在使用的代码。我试图让tinymce将现有的数据加载到TEXTAREA中,但我没有尝试过这样做,也没有任何“解决方案”有效。只要我不尝试加载数据,编辑器就可以正常加载:

代码语言:javascript
复制
<script type="text/javascript" src="http://URL/scripts/tinymce/js/tinymce/tinymce.min.js"></script>
<script type="text/javascript">
tinymce.PluginManager.load("spellchecker","http://URL/scripts/tinymce/js/tinymce/plugins/spellchecker/plugin.min.js");
tinymce.PluginManager.load("wordcount","http://URL/scripts/tinymce/js/tinymce/plugins/wordcount/plugin.min.js");
tinymce.init({
  selector: "textarea#my_id",   
  theme: "modern",
  plugins: [
    "advlist autolink lists link image charmap print preview hr anchor pagebreak",
    "searchreplace wordcount visualblocks visualchars ",
    "insertdatetime media nonbreaking save table contextmenu directionality",
    "template paste textcolor spellchecker code"
  ],
  relative_urls : true,
  document_base_url : "http://URL/",  
  content_css: "scripts/tinymce/js/tinymce/skinslightgray/skin.min.css",
  external_image_list_url : "tinymce_imagelist.js",
  toolbar: "insertfile undo redo | styleselect | bold italic | alignleft aligncenter alignright alignjustify | bullist numlist outdent indent | link image media | print preview | forecolor backcolor",
  autosave_ask_before_unload: false
});
tinyMCE.activeEditor.setContent("textarea content in here");      // <-- this doesn't work
</script>
<textarea name="Blog_Text" id="my_id" class="editable" cols="60%" rows="20"></textarea>

我试过了:

代码语言:javascript
复制
tinyMCE.activeEditor.setContent("textarea content in here");
tinyMCE.get("my_id").setContent("textarea content in here");

var ed = tinyMCE.getInstanceById("blog_text");
ed.focus();
ed.setContent("textarea content here");

$('#my_id').html("textarea content here");

如果我不尝试加载textarea id,那么编辑器就会正确加载(没有内容)。

我一直在寻找解决方案,但什么都不起作用。我真的需要这个问题的解决方案。我试着把这一行放在"init“之前和之后。

我真的希望在上下文中显示示例,对于像tinymce这样复杂和不可原谅的工具来说,只有一行代码是没有帮助的。

代码语言:javascript
复制
enter code here
EN

回答 3

Stack Overflow用户

发布于 2013-05-26 06:45:47

JavaScript区分大小写。尝试使用

tinymce.activeEditor.setContent("textarea content in here");

票数 0
EN

Stack Overflow用户

发布于 2013-12-29 10:52:43

这是我知道的一种工作方式:

我使用了TinyMCE的jQuery版本,我最初在其中使用现有内容填充文本区域,如下所示:

代码语言:javascript
复制
var existTxt = "textarea content here";
$('#my_id').html(existTxt);

然后,通过调用脚本函数初始化TinyMCE编辑器,如下所示:

代码语言:javascript
复制
function updateTxt(my_id) {
        $('#'+ my_id).tinymce({
      ..all of the editor settings..
 });
}

编辑器初始化,将现有的文本区域内容放在编辑器中,并带有html标记和all。

票数 0
EN

Stack Overflow用户

发布于 2014-11-27 18:31:01

在Martin Sansome的帮助下,我使用Angular.js的解决方案是切换到TinyMCE的jQuery插件版本,以确保我首先在页面上调用jQuery,并包括tinymce.min.js和jquery.tinymce.min.js。

代码语言:javascript
复制
<script src="lib/jquery/jquery.min.js"></script>
<script type="text/javascript" src="js/tinymce/tinymce.min.js"></script>
<script type="text/javascript" src="js/tinymce/jquery.tinymce.min.js"></script>

在我的控制器文件中,我将文本区域的内容设置为上下文中的正确数据,然后初始化tinyMCE

代码语言:javascript
复制
$('#edit_Jobs_Description').html(decodeURIComponent(attrs.jobsdescription));

$('#edit_Jobs_Description').tinymce({
});

现在,正确的内容显示在页面编辑框的文本区域中。

最后,我必须更改提交表单的控制器中的函数,以使用来自TinyMCE的新内容,而不是来自文本区域的内容。

代码语言:javascript
复制
var jobDescriptionHtml = tinyMCE.activeEditor.getContent();

希望这对某些人有帮助。感谢马丁·桑松。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/16754393

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档