编码问题导致js失效
2009-05-25 11:03
447 查看
最近在一个项目中用了validation-framework. 但是发现jsp页面中引入的validation-framework.js脚本并没有起作用,最后定位到编码问题,因为validation-framework.js文件本身使用的是UTF-8编码,而jsp页面使用的是GBK,编码不匹配造成了js文件失效。
解决办法:
1.将jsp页面编码设置为UTF-8
2.保持jsp页面编码不变,将js文件重新编码为GBK
附:gbk与utf-8的区别
1.GBK的文字编码是双字节来表示的,即不论中、英文字符均使用双字节来表示,只不过为区分中文,将其最高位都定成1。
UTF-8编码则是用以解决国际上字符的一种多字节编码,它对英文使用8位(即一个字节),中文使用24位(三个字节)来编码。GBK包含全部中文字符;UTF-8则包含全世界所有国家需要用到的字符。
2.GBK是在国家标准GB2312基础上扩容后兼容GB2312的标准,UTF-8编码的文字可以在各国各种支持UTF8字符集的浏览器上显示。
比如,如果是UTF8编码,则在外国人的英文IE上也能显示中文,而无需他们下载IE的中文语言支持包。
3.使用GBK则每个字符占用2个字节,而使用UTF-8英文却只占一个字节,对于英文字符较多的网站用UTF-8节省空间。
解决办法:
1.将jsp页面编码设置为UTF-8
2.保持jsp页面编码不变,将js文件重新编码为GBK
附:gbk与utf-8的区别
1.GBK的文字编码是双字节来表示的,即不论中、英文字符均使用双字节来表示,只不过为区分中文,将其最高位都定成1。
UTF-8编码则是用以解决国际上字符的一种多字节编码,它对英文使用8位(即一个字节),中文使用24位(三个字节)来编码。GBK包含全部中文字符;UTF-8则包含全世界所有国家需要用到的字符。
2.GBK是在国家标准GB2312基础上扩容后兼容GB2312的标准,UTF-8编码的文字可以在各国各种支持UTF8字符集的浏览器上显示。
比如,如果是UTF8编码,则在外国人的英文IE上也能显示中文,而无需他们下载IE的中文语言支持包。
3.使用GBK则每个字符占用2个字节,而使用UTF-8英文却只占一个字节,对于英文字符较多的网站用UTF-8节省空间。
相关文章推荐
- 一个js导致的jquery失效问题的解决方法
- ajax动态加载js,导致js不执行失效问题吻
- Bootstrap框架使用iframe及jQuery中load方法导致js失效问题
- ueditor的工具栏显示乱码解决方法 小问题.. 是你的页面编码与语言包js编码不符所导致的
- ie6下面关于html编码问题导致的js出错,css不被应用
- ajax动态加载js,导致js不执行失效问题
- 记录问题:ajax局部刷新页面,导致js事件失效
- jQuery 重复加载,导致依赖于 jQuery的JS全部失效问题
- servlet跳转页面导致css,js等失效的问题
- ajax动态加载js,导致js不执行失效问题阜
- 关于js的Date.getFullYear()导致其余代码失效的问题
- js操作cookie或url导致在java端编码问题
- 一个js导致的jquery失效问题的解决方法
- ajax动态加载js,导致js不执行失效问题颇
- 样式文件跨域导致Respond.js插件在IE浏览器失效的问题
- knockoutjs with绑定导致unobtrusive validation失效的问题
- 帮助解决网页和JS文件中的中文编码问题的小工具
- 关于宽字节编码导致的web安全问题
- js 编码问题
- 一段RUBY的脚本,分析姓名的分数,本来没甚么难的,就是ruby1.91的编码问题,导致一堆问题