Telerik Kendo Editor 2017版换行后调用insertHtml丢失<br />标签求解决方案
解决Telerik Kendo Editor 2017中insertHtml删除
标签的问题
标签的问题
针对Kendo Editor 2017版本里换行后调用insertHtml方法会丢失<br />标签的问题,以下是几种可行的解决办法:
方法1:使用pasteHtml替代insertHtml
pasteHtml方法会直接插入原始HTML内容,不会自动过滤换行标签,适合保留<br />的场景:
// 自定义工具点击事件示例 $("#custom-tool").on("click", function() { var editor = $("#editor").data("kendoEditor"); editor.pasteHtml("<br /><strong>插入的文本</strong>"); });
方法2:禁用HTML编码配置
初始化Editor时设置encodeHtml: false,关闭自动HTML编码,确保插入的<br />不会被转义或删除:
$("#editor").kendoEditor({ encodeHtml: false, tools: [ // 你的自定义工具配置 ] });
方法3:先插入换行再插入内容
通过执行编辑器的insertLineBreak命令手动插入换行,再调用insertHtml添加目标内容:
$("#custom-tool").on("click", function() { var editor = $("#editor").data("kendoEditor"); editor.execCommand('insertLineBreak'); editor.insertHtml("<strong>插入的文本</strong>"); });
方法4:自定义序列化规则
通过配置serialization.rules强制保留<br />标签,确保编辑器序列化时不会丢弃该标签:
$("#editor").kendoEditor({ serialization: { rules: [{ node: "br", serialize: function() { return "<br />"; } }] }, tools: [ // 你的自定义工具配置 ] });
验证方式:按照复现步骤操作——在"test text"末尾按回车输入新文本,点击自定义工具,即可看到<br />标签被正确保留,内容按预期换行显示。
内容的提问来源于stack exchange,提问作者S Arslan
相关产品推荐
相关产品推荐

