首页 > 解决方案 > TinyMCE 循环遍历所有编辑器,获取一个属性及其相关的编辑器值

问题描述

我有以下 HTML:

<div data-edit="myeditor1">
    Test 1234
</div>
<div>
    NotEditable
</div>
<div data-edit="myeditor2">
    Test 1234
</div>

我用以下 JS 实例化 TinyMCE:

tinymce.init({
    selector:'*[data-edit]',
    inline: true
});

编辑器显示得很好,

如何获取每个编辑器的值和“数据编辑”属性值?

我尝试通过以下方式循环编辑器:

for (inst in tinyMCE.editors) {
    var c = tinyMCE.editors[inst].getContent;
    console.log(c);
}

但这并没有做到,

也试过:

$("*[data-edit]").each(function() {
    var this_att = $(this).data("edit");
    var thishtml = tinymce.get(this_att).getContent();
});

那没用,

如何遍历所有编辑器,获取“数据编辑”属性及其相关的编辑器值?

请帮我解决这个问题。

标签: javascriptjquerytinymce

解决方案


没有设法在评论中使代码缩进,所以我会给出一个完整的答案,它并不漂亮,但最后它得到了你的data-edit属性。

for (inst in tinyMCE.editors) {
  let c = tinyMCE.editors[inst].getContent();
  let edit = $(tinyMCE.editors[inst].targetElm).data('edit')
  console.log(edit + '=' + c);
}

推荐阅读