我正在使用ckeditor。 我通过运行检查了默认情况下不允许哪些元素:
ckEditor.on( 'instanceReady', function() {
console.log(JSON.stringify(ckEditor.filter.allowedContent, null, '\t'));
});
这表明允许使用 img
元素(尽管 img 按钮没有出现在我的工具栏中)。
由于我不希望用户能够使用 img
元素提交代码,因此我想完全禁止这样做。我尝试在 config.js 文件中禁止它:
config.disallowedContent = 'img';
并且在初始化编辑器时也尝试过:
CKEDITOR.replace("comment", {
disallowedContent: 'img'
});
当我使用 ckEditor.filter.allowedContent
命令显示允许的内容时,img
元素仍显示为允许的。
我做错了什么?我认为对于有人在编辑器中粘贴代码的情况,仍然有必要禁止 img
...
(我也在验证服务器端,但理想情况下希望服务器端和客户端匹配,即:两者都不允许 img
)。
谢谢
最佳答案
为了禁止图像,请使用以下代码:
CKEDITOR.replace( 'editor1', {
disallowedContent: 'img'
});
请注意CKEDITOR.instances.editor1.filter.disallowedContent
和
CKEDITOR.instances.editor1.filter.allowedContent
是两个单独的列表,向其中一个列表添加元素不会将其从另一个列表中删除。您可以在 allowedContent list 中定义(或编辑器默认这样做)允许的元素列表。以及 disallowedContent list 中不允许的元素列表。后者的优先级高于前一个 - https://docs.ckeditor.com/ckeditor4/docs/#!/guide/dev_disallowed_content 。这就是编辑器中不允许使用图像的原因。
关于javascript - Cckeditor 不允许使用 img 元素,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46712668/