UEditor 是百度前端团队推出的一款功能强大的富文本编辑器,最近在项目中使用了 UEditor,在更新内容时向 UEditor 赋值时遇到了问题,UEditor 赋值 html 数据无法按照原来样式显示,而是直接显示 html 代码。
经过检查发现,我是在 Thinkphp5 中使用的 UEditor,而我又设置了输入过滤,使用了 htmlspecialchars 过滤提交的 html 代码。解决办法有如下两种:
1.(不推荐)关闭 Thinkphp5 的 htmlspecialchars 过滤,在 config.php 文件中找到 default_filter 项删除配置的 htmlspecialchars 保存即可。
2.(推荐)在赋值时进行二次转义:{$article.content|htmlspecialchars_decode},如果你还设置了其他的转义方式,那么加到后面即可,比如:{$article.content|htmlspecialchars_decode|stripslashes}
本文为原创文章,版权归主机之家测评所有,欢迎分享本文,转载请保留出处!
内容反馈