是的。编码问题。你在php加上编码头信息

解决方案 »

  1.   

    由于ie和Firefox在处理CDATA节点略有差异
    贴出你读取CDATA节点的js代码
      

  2.   

    我是用PHP写的代码,代码为:
    $str = "...<description><![CDATA[$description]]></description>...";
    echo $str;
    我如何加上编码头信息啊!
      

  3.   

    输出前加上:header("Content-type:xml/text");
      

  4.   

    回楼上,这样我已经加了,所以在Firefox上才没有问题的!现在是在IE下有问题!
      

  5.   

    这个问题与客户端代码有关,而与php关系不大1、可考虑增加类型声明header("Content-type: text/xml");
       无论是否已有该声明都对你的问题影响不大,因为xml文档已经被开始解析了
    2、xml文档中应有语言声明
    <?xml version="1.0" encoding="语言编码名" ?>
    对xml的解析完全依赖该声明,缺省则认为是utf-8编码
    只要文档中内容的编码与该声明相符就可以被正确识别
      

  6.   

    回楼上,您说的语言声明我也有的:<?xml version="1.0" encoding="utf-8" ?>
    我刚才看了一些相关的帖子,说是和IE对CDATA的解析不完整,我怀疑是不是因为此问题造成的,不知道有没有高手解释一下!
      

  7.   

    我已经找到解决问题的答案了,现在和大家一起分享。我通过<![CDATA[]]>显示的内容是别人提供的字符串,而这个串存在半个汉字的可能。IE浏览器在解析的时候,会将这半个汉字和后面的]]>符号一起算一个汉字,这样就存在格式错误。因此,我在显示字符串之前先把这半个汉字去掉就可以了,呵呵!