您的位置:首页 > 其它

手机页面跳转时传递中文参数出现乱码问题

2015-08-06 16:08 549 查看
在项目过程中,遇到一个问题。在一个页面的输入框获得输入的数据,跳转并将参数传到另一个页面(location.hash),再用ajax发送请求。

此时,如果是在PC端,输入中文进行搜索是没问题的,但是在手机端查看URL是会发现中文变成乱码。

于是借由百度进行检验,发现PC端URL中可含有中文参数,而手机端的中文参数在URL中已被转为utf码。

猜测引起这个问题的原因和浏览器有关。

查看浏览器的审查元素后发现谷歌浏览器在发送ajax请求时已将中文参数转化为UTF-8码。

最后的解决方法是在页面间传递参数前先将中文参数转化为utf-8码,然后在调用ajax发送请求时再将参数解码。具体使用了encodeURLComponent()和decodeURLComponent()。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: