[英]TinyMCE getting all editors and setting
美好的一天,
我正在尝试使用TinyMCE制作一个脚本,该脚本遍历所有编辑器(最后获取所有内容并保存),并替换其内容。
但是,这仅适用于第一个编辑器,而不适用于下一个编辑器。
for (var i = 0; i < tinymce.editors.length; i++) {
var editorInstance = tinymce.editors[i];
editorInstance.setContent('I have changed the content of this editor!');
}
不太确定我在做什么错。
我的HTML代码是:
<textarea id="mytextarea" class="editor" name="editor[156]"></textarea>
<textarea id="mytextarea" class="editor" name="editor[172]"></textarea>
<textarea id="mytextarea" class="editor" name="editor[173]"></textarea>
<textarea id="mytextarea" class="editor" name="editor[174]"></textarea>
按照我自己的逻辑,这应该可行。 (*但不是;-) *)
我也尝试了不同的方法:
$("#editorsection .editor").each(function () {
console.log('editor found method #1');
var Content = tinyMCE.$(this).getContent();
console.log('obtained content : ' + Content);
});
但也无济于事。
我希望有人能告诉我我做错了什么。 提前致谢!
HTML代码:
<textarea class="editor" name="editor[156]"></textarea>
<textarea class="editor" name="editor[172]"></textarea>
<textarea class="editor" name="editor[173]"></textarea>
<textarea class="editor" name="editor[174]"></textarea>
Javascript / JQuery代码
function SaveContent(){
console.log('ajax save content button clicked');
console.log(tinymce.editors.length + ' : TinyMCE editors found.');
var editorContent = [];
for (var i = 0; i < tinymce.editors.length; i++) {
var editorInstance = tinymce.editors[i];
var content = editorInstance.getContent();
editorContent.push( content );
console.log('editor : ' + i + ' has content set : ' + content );
}
console.log('obtained content : ' + editorContent);
///######## SENDING THE INFORMATION BY AJAX
$.ajax({
type: "POST",
url: "?ajaxcall=quicksave",
data: {
'content': editorContent,
'page': 5
},
///######## IN CASE OF SUCCESS
success: function (response) {
if(response !== ''){
alert('error : ' + response);
}
}
}
);
}
一页上不能有多个具有相同id
-这是无效的HTML。
如果您将每个textarea
更改为具有自己的id
应该开始工作。
这个小提琴显示了一个有效的示例: http : //fiddle.tinymce.com/Ujgaab/2
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.