锁定老帖子 主题:AJAX中文乱码解决
精华帖 (0) :: 良好帖 (0) :: 新手帖 (0) :: 隐藏帖 (9)
|
|
---|---|
作者 | 正文 |
发表时间:2009-08-25
之前在处理AJAX时我也碰到类似的问题...转了2次,但最后特殊情况问题还是不能解决.最后是用BASE64来做的,客户端与服务器分开处理....结果OK
|
|
返回顶楼 | |
发表时间:2009-08-25
做Ajax编码方面的操作的时候,应该考虑不同的浏览器,也要考虑工作空间的编码问题,
我做过一个测试,在firefox下没有必要使用转换编码操作. |
|
返回顶楼 | |
发表时间:2009-08-25
var url = 'policy.do?method=searchSuggest&word=' + encodeURIComponent(str)+"&now="+new Date().getTime();
|
|
返回顶楼 | |
发表时间:2009-08-25
所有的地方都用utf-8,包括js文件存储编码。
|
|
返回顶楼 | |
发表时间:2009-08-25
GET方式传中文参数的问题我以前遇到过。
以前有次想做一个中文搜索功能,参数是GET方式传的,因为希望用户可以把搜索结果页面的URL 方便的发给别人,就是在INPUT里输入搜索的中文单词,然后点搜索,然后复制地址栏里的URL,然后粘贴给其他朋友。 后来发现做到所有浏览器都支持太困难了,不知道是不是我至今都没理解。 不同的浏览器对URI的处理不一样,处理时使用的编码也不一样。所以你在FF上的URL复制到另一个浏览器的URL里有可能就会成为无效链接…… 不知道我理解的对不对,总之我说的那个程序至今没实现。 |
|
返回顶楼 | |
发表时间:2009-08-26
JSP页面:var para2=encodeURI($("#tx_name").val());
服务器端(也是jsp页面,jsp页面的charset是GBK类型):java.net.URLDecoder.decode(param2,"utf-8"); 我是这样的,中文也能获取到,没问题的 |
|
返回顶楼 | |
发表时间:2009-08-26
如果是utf-8编码,就是以get方式提交乱码的问题,在tomcat里配置一下就可以了,URIEncoding='utf-8',哪里都不用转。如果post提交本身就没问题。
|
|
返回顶楼 | |
发表时间:2009-08-26
peacock 写道 文件编码=数据库编码=输出编码=网页编码
正解! |
|
返回顶楼 | |
发表时间:2009-08-26
adaikiss 写道 peacock 写道 文件编码=数据库编码=输出编码=网页编码
正解! 只有这个是正解,其他的什么转码都是既麻烦,又不通用,现在你解决了中文,如果是日语、中文、西班牙语、英语同时需要的页面呢??utf-8, 所有的html, js, css, servlet全部统一u8,现在的ajax wrapper一般都附带一个字符编码的设置,设成u8就可以了 |
|
返回顶楼 | |
发表时间:2009-08-26
两次encodeURI操作,是把原中文彻底转换成iso8859-1编码进行传输
这样服务器,先通一次UTF8转换,再通过一次java.net.URLDecoder.decode(param2,"utf-8"); 就可以转成中文,这种方式也算是一种中文的终解决方法 |
|
返回顶楼 | |