强制TinyMCE删除数据-属性

强制TinyMCE删除数据-属性,tinymce,tinymce-3,Tinymce,Tinymce 3,我正在使用TinyMCE插件,并将valid\u elements选项设置为: "a[href|target:_blank],strong/b,em/i,br,p,ul,ol,li" 即使没有列出数据属性,TinyMCE也不会将它们去掉。它似乎去掉了所有其他未列出的属性,但出于某种原因,数据属性(例如data foo=“bar”)是一个例外。如何让TinyMCE去掉数据属性 我正在使用TinyMCE 3.4.7版这就是我解决这个问题的方法。我通过以下函数手动更改了TinyMCE生成的HTML:

我正在使用TinyMCE插件,并将
valid\u elements
选项设置为:

"a[href|target:_blank],strong/b,em/i,br,p,ul,ol,li"
即使没有列出数据属性,TinyMCE也不会将它们去掉。它似乎去掉了所有其他未列出的属性,但出于某种原因,数据属性(例如
data foo=“bar”
)是一个例外。如何让TinyMCE去掉数据属性


我正在使用TinyMCE 3.4.7版

这就是我解决这个问题的方法。我通过以下函数手动更改了TinyMCE生成的HTML:

var stripDataAttributes = function(html) {

  var tags = html.match(/(<\/?[\S][^>]*>)/gi);
  tags.forEach(function(tag){
    html = html.replace(tag, tag.replace(/(data-.+?=".*?")|(data-.+?='.*?')|(data-[a-zA-Z0-9-]+)/g, ''));
  });

  return html;
};

我不得不问,5年后这是否是最好的方式,因为我对TinyMCE 5有着完全相同的问题,特别是在从Word@Meeker谢谢你的更新!
tinyMCE.activeEditor.setContent(
  stripDataAttributes(
    tinyMCE.activeEditor.getContent()
  )
);