xsl经过jdom解析后生成的页面正常的,但是html页面对应的源代码中静态中文全部为类似字段这样的字符串,xsl原来使用的是gb2312编码,现在改成了gbk编码,查看生成的html页面的源代码,原来在xsl中直接手工录入的中文,如“姓名”、“性别”等在源代码中全部是类似字段这样的字符串,而从数据查询出来的值“张三”、“男”这些中文在源代码中能正常显示
请问怎样使得xsl中的静态中文能正常显示?
因为现在的js判断都不能用了,如:if(name=='张三'){} 现在都变成if(name=='字段'){}了

解决方案 »

  1.   

    xsl还设置成gb2312呗,页面用gbk
      

  2.   

    经本人仔细鉴别,楼主提供了伪证.<script>
    var sname='&#23383;&#27573;';   //这两个字是“字段”
    //var sname='&#24352;&#19977;'; //这才是张三
    var arr = sname.replace(/\&\#/g,"" ).split(";");
    var str = "";
    for( var i in arr )
        str+= String.fromCharCode(arr[i]);
    alert(str);
    </script>
      

  3.   

    楼上是用是replace函数,但是这样不行啊,有n个页面,有n个<script>代码段,不可能一一替换啊?
    另外,生成的html页面中的中文也是类似&#24352;&#19977的字符串,这种情况怎样办啊?
      

  4.   

    看仔细,我那是把字符串整体UNICODE值取出来获取中文字符串.你能贴个完整的xsl + xml 上来给大家测试下吗? 光是你的描述很难辨别问题所在.