从TinyMCE textarea获取价值

时间:2011-06-30 22:23:18

标签: javascript tinymce

我的网站有一个新闻编辑器,我正在使用TinyMCE。我希望能够做的是有一个按钮(在TinyMCE编辑器本身之外),我可以单击以扫描textarea以查找任何图像,然后将这些图像列为选项以用于所述新闻文章的缩略图图像。

要了解我的意思,请在此处查看此链接:https://docs.google.com/leaf?id=0B05m73kzudwPNzUwZjkyNmItYjZkMy00NTdlLTlkNDctOGRhYThjMzNjNTM5&hl=en_US

我的问题是document.getElementById('NewsArticle')。值在textarea中有文本时没有返回任何内容

另一个潜在的问题是,textarea中显示的不是实际的代码,而是图像等,所以我不确定它是否会起作用,但是从表单提交后的数据[新闻] [文章]价值重新回到文本中,我以为可能有机会。

如果有人知道如何获取tinyMCE textarea的内容或代码,或者有更好的解决方案,我有兴趣听听

5 个答案:

答案 0 :(得分:136)

TinyMce有an api用于从编辑器访问内容。

此代码将从活动编辑器中获取html:

// Get the HTML contents of the currently active editor
tinyMCE.activeEditor.getContent();

// Get the raw contents of the currently active editor
tinyMCE.activeEditor.getContent({format : 'raw'});

// Get content of a specific editor:
tinyMCE.get('content id').getContent()

答案 1 :(得分:7)

使用以下语法,这将删除输入文本区域中不需要的字符....

(((tinyMCE.get('YourTextAreaId').getContent()).replace(/(&nbsp;)*/g, "")).replace(/(<p>)*/g, "")).replace(/<(\/)?p[^>]*>/g, "");

答案 2 :(得分:5)

尝试

window.parent.tinymce.get('contentID').getContent();

出于某种原因,股票标准tinymce.get()电话对我不起作用,所以我尝试了这个并且它有效。 :)

答案 3 :(得分:2)

var temp = tinymce.get('textAreaName').save();
console.log(temp);

<强> OR

var temp =tinymce.get('textAreaName').getContent();
console.log(temp);

答案 4 :(得分:0)

可能您有类似

<form>
  <textarea id="myArea">Hello, World!</textarea>
</form>

您只需添加以下内容

<form method="post">
  <textarea id="myArea" name="value">Hello, World!</textarea>
  <input type="submit">
</form>

,您可以在myArea var下使用PHP捕获数据。