2

我正在使用带有一些自定义插件的 tinyMCE 编辑器。我遇到的问题是当我保存内容时,我想在将 HTML 发送到服务器之前做一些工作。我知道有两个函数可以捕获保存事件。save_callback(id, html, body) 允许直接修改 html。我无法修改 onSaveContent 中的内容(DOM 或其他)。

save_callback: function (id, html, body) {
    // do the work on html
    return html;
},
setup: function (ed) {
    ed.onSaveContent.add(function (ed, o) {
        //I can't modify
    });
},

此外,每个保存操作都会多次调用 save_callback(2 或 4 次)。

我成功修改了 save_callback 中的 HTML,但是使用原始参数重新调用了该函数,并且我不想再次执行该工作,因为内部调用了 Web 服务。

谢谢

4

2 回答 2

1
save_callback: function (id, html, body) {
    // do the work on html
    return html;
},
setup: function (ed) {
    ed.onSaveContent.add(function (ed, o) {
        o.content = mynewcontent; // here you can modify the content
    });
},
于 2015-11-25T10:59:29.930 回答
0

这是一个示例,如果您想使用 DOM 操作而不是字符串来更新编辑器内容。

setup: function (ed) {
    ed.onSaveContent.add(function (ed, o) {
       var images = ed.dom.select("img");
       ed.dom.setAttrib(images, "height", "55")
       o.content = editor.getContent();
    });
},
于 2018-02-26T21:12:38.167 回答