如何在2sxc的WYSIWYG编辑器中配置允许插入JavaScript?
配置2sxc WYSIWYG编辑器支持JavaScript插入
要让2sxc的TinyMCE编辑器允许插入script标签,有几种可行的配置方式,根据你的需求选择:
方法1:全局修改DNN的TinyMCE配置(所有编辑器生效)
- 登录DNN后台,进入「设置」→「站点设置」→「HTML编辑器管理器」
- 选中当前使用的TinyMCE配置文件(通常是默认配置),点击「编辑」
- 在「扩展有效元素」输入框中追加
script[language|type|src](如果已有内容,用逗号分隔) - 保存配置后,刷新页面测试编辑器是否允许插入script标签
方法2:为2sxc特定内容字段单独配置
- 进入2sxc的内容类型管理界面,找到需要支持JS的字段(比如Content字段)
- 编辑该字段的「编辑器设置」,在「自定义配置」区域填入以下JSON:
{ "extended_valid_elements": "script[language|type|src]", "valid_elements": "+*[*],script[language|type|src]" } - 保存内容类型设置,该字段的WYSIWYG编辑器就会保留script标签
方法3:通过2sxc自定义JS注入配置(适合13+版本)
- 在2sxc应用的「文件」管理中新建
custom-tinymce-config.js文件,写入:window.addEventListener('2sxc.editor.init', function(e) { const editor = e.detail.editor; if (!editor?.settings) return; // 扩展允许的元素,避免script被过滤 editor.settings.extended_valid_elements += ',script[language|type|src]'; editor.settings.valid_elements += ',script[language|type|src]'; // 禁用自动移除空标签(如果需要) editor.settings.forced_root_block = false; }); - 进入应用的「设置」→「资源」,添加这个JS文件,并设置加载时机为「仅编辑模式」
注意事项
- 开启script支持后,务必限制只有可信用户能编辑内容,防止XSS攻击
- 插入script时建议使用编辑器的「源代码」模式,确保标签格式正确
- 如果配置后仍不生效,尝试重启DNN应用池或清除浏览器缓存
内容的提问来源于stack exchange,提问作者erw13n
相关产品推荐
相关产品推荐

