日期:2014-05-17  浏览次数:20716 次

一个头疼的js乱码问题。请教牛人解答
首先这是一个js引入的乱码问题。公司的项目,我check 下来到我自己机器上。然后引入的js运行时其中的中文是乱码,就是在我自己的机器上有乱码。我以为是自己本身机器上的环境问题。但是实际上也不对。以下是我的问题描述:一开始有个项目在我机器上运行其中js是没有乱码的。然后很久过后再次运行该项目出现的乱码。诡异!就是时间控件的中文显示不正常(别人机器上没有出现该问题)。但是我正在开发的项目却没有出现js乱码的。也是在我自己机器上的。以为是某个环境配置错误了。仔细检查一下,没有什么问题的,但是如果大环境配置错误了,我想过如果是某个大环境配置错误了,应该我机器上的所有项目运行都出现乱码的。不可能挑一两个出现乱码。基本设置:eclipse统一的utf-8,任何文件格式,包括js。项目有个过滤器,全部将请求过滤为request.setCharactorEncoding("utf-8").我调试了一下。乱码的js文件也经过了这个过滤器的。用firebug debug了一下。响应头显示请求的文件被编码为iso-8859-1了。也就是从服务器下载文件时给编码为iso-8859-1了。用tomcate6运行的。我实在想不通请求通过了编码过滤器后。还有哪里会影响它的请求编码的。疯狂google,baidu了N多天。终于还是没有找到答案。这个问题本就有些无厘头的。(公司部署出去的基本没问题的。但是也有个特例,单单有一个地方也有js乱码。而且有时是笔记本有js乱码,台式机正常。更加诡异。)很多人可能都没有遇见这个问题的。我也是第一次遇见的。没遇见的人就漂过吧,不要喷我傻,只求遇见过该问题的人解答一下,或者经验丰富的高手指点一下。小子在这里不胜感激。

------解决方案--------------------
在导入js的<script>标签加charset属性了没?
如:<script charset='utf-8'></script>
------解决方案--------------------
这个js文件本身是utf-8编码么……
------解决方案--------------------
呵呵,人品你也信啊........
------解决方案--------------------
非人品问题...请检查下面几个地方
1,服务器设置的编码.
2,php或asp等中设置的编码.
3,调用js时设置的编码.

------解决方案--------------------
如果要处理中文,建议把所有地方统一设置为utf-8编码.
------解决方案--------------------
我和7楼的说法一样