我已经在我的项目中集成了 InnovaEditor,管理员可以在其中输入 html 代码以在网站上显示。
我的问题是我想阻止用户在编辑器的 html 中插入 javascript 事件。
例如。如果用户在这里添加鼠标
然后应该删除 onmouseover 事件。此功能在 tinymce 中可用,但在 innovaeditor 中不可用。TinyMCE 将在用户以 html 模式添加代码时删除事件。
谁能帮我解决这个问题?
我已经在我的项目中集成了 InnovaEditor,管理员可以在其中输入 html 代码以在网站上显示。
我的问题是我想阻止用户在编辑器的 html 中插入 javascript 事件。
例如。如果用户在这里添加鼠标
然后应该删除 onmouseover 事件。此功能在 tinymce 中可用,但在 innovaeditor 中不可用。TinyMCE 将在用户以 html 模式添加代码时删除事件。
谁能帮我解决这个问题?
呵呵..我已经弄清楚了我可以使用正则表达式来清理 html 代码的事件。
我正在使用 Innovaeditor 的 onSelectionChanged 事件。
oEdit1.onSelectionChanged=function(){
var html = oEdit1.getXHTMLBody();
html = html.replace(/ on\w+="[^"]*"/g, '');
html = html.replace(/<script\b[^<]*(?:(?!<\/script>)<[^<]*)*<\/script>/gi, '');
oEdit1.putHTML(html);
};
提交时与表单验证使用相同的脚本。
此代码将从 html 代码中删除脚本标记和所有事件。