ckeditor空格 nbsp ckeditor 空格nbsp全变问号的解决方法

ckeditor 空格nbsp全变问号的解决方法――简介

我们用PHP版的ckeditor的同行们是不是经常会遇到空格 全变成问号的情况呢(如图)。

录入进去的是 (HTML代码),utf-8编码,但用ckeditor读入内容时,在编辑器里显示的却是个黑点问号,切换到源码,竟是一个小方框,怎么办呢,真是折腾死人了。。。

ckeditor空格 nbsp ckeditor 空格nbsp全变问号的解决方法

我们总归咎于ckeditor的原因,其实还是编码的原因,解决方法如下――

ckeditor 空格nbsp全变问号的解决方法――工具/原料
Dreamweaver或其他网页源码编辑器ckeditor 空格nbsp全变问号的解决方法――方法/步骤

ckeditor 空格nbsp全变问号的解决方法 1、

方法1:修改ckeditor/config.js

所有的情况都出现在有空格&nbsp;的地方,而ckeditor对于空行是自动添加段落标记"<p></p>"的,而如果这一行里没有内容的话,又自动在里面添加”&nbsp;“,所以可以控制ckeditor不让它自动添加“nbsp”,在config.js里加上语句“config.fillEmptyBlocks=false;”(如图)。

另外也有可以控制ckeditor让它不自动添加段落标记的,这个自己百度研究。

(本方法不是最佳之选,毕竟编辑时还是需要用到空格键来修饰段落的。)


ckeditor 空格nbsp全变问号的解决方法 2、

方法2:

传递给ckeditor的这个$content要先替换一下内容,把“&”转为"&amp;",即:str_replace("&nbsp;","&amp;nbsp;",$content);”这样也可以让ckeditor正常显示,也可以随意录入空格符。


ckeditor 空格nbsp全变问号的解决方法 3、

方法3:从根源上解决

之所以在切换到源码时看到一个个小方框,原因是转换时编码不对。

我们平时都把内容先用html_entity_decode转一下再传给ckeditor,一般会这样写“html_entity_decode($content)”,html_entity_decode默认编码是ISO-8859-1,而我们数据库存的数码的编码通常是utf8(至少也不会用到ISO-8859-1这种编码),所以我们在转换时要把html_entity_decode写完整:html_entity_decode($content_EN,ENT_COMPAT,"UTF-8"),中间的ENT_COMPAT也是html_entity_decode默认值,因为要写第三个参数,所以第二个参数也必须带上,详细自己查看html_entity_decode的详细说明。

ckeditor 空格nbsp全变问号的解决方法――注意事项
这是本人困扰多时,也折腾了很久的问题,原来原因只在一个小小的地方,汗,希望能帮助到你,给个赞吧!

  

爱华网本文地址 » http://www.aihuau.com/a/8104090103/176289.html

更多阅读

电脑反映变慢的解决办法 开机速度慢的解决办法

电脑经过长期使用之后系统反映就会缓慢,下面是集中解决方法。电脑反映变慢的解决办法——步骤/方法1.系统启动项太多,影响开机启动速度,方法:开始——运行——msconfig——启动——在启动项里,你只保留ctfmon.exe输入法和杀毒

声明:《ckeditor空格 nbsp ckeditor 空格nbsp全变问号的解决方法》为网友碧潭飞雪分享!如侵犯到您的合法权益请联系我们删除