码迷,mamicode.com
首页 > Web开发 > 详细

web前端页面解决中文传参乱码问题

时间:2017-09-06 10:09:24      阅读:1160      评论:0      收藏:0      [点我收藏+]

标签:就会   如何   url   获取   数字   index   截取   解码   元素   

  问题背景:在项目中往往会涉及到前端跳转页面时要传一些参数给下一个页面,如果参数是英文或者数字的时候就很好解决,然而有时候传参会涉及到中文汉字,这个时候再单纯的拼接往往就会导致中文乱码,下面我们就该讨论一下如何解决中文传参乱码的问题。

  假设A页面跳转到B页面并且A向B传参,首先在A页面中要调用这个方法:encodeURI("这里是中文参数");

  完整的拼接效果为:         

  window.location.href="B.html?&title="+encodeURI("这里是中文参数"); 

  至此页面中文传参已经完成,下一步就是如何把参数给翻译成中文,那么再跳到B页面进行处理。

  解码代码也只是一句:decodeURI("需要转码的链接");

  而要获取参数,则需要分析链接并做正则匹配进行截取,全部代码如下:  

  //截取链接传过来的参数
  var url=window.location.href; //获取当前页面的url
  url = decodeURI(url);//转码
  var len=url.length; //获取url的长度值
  var a=url.indexOf("?"); //获取第一次出现?的位置下标
  var b=url.substr(a+1,len); //截取问号之后的内容
  var c=b.split("&"); //从指定的地方将字符串分割成字符串数组
  var arr=new Array(); //新建一个数组
  for(var i=0;i<c.length;i++){
    var d=c[i].split("=")[1]; //从=处将字符串分割成字符串数组,并选择第2个元素
    arr.push(d); //将获取的元素存入到数组中
  }

至此,前端页面间的传中文参数乱码的问题就得到解决了。

web前端页面解决中文传参乱码问题

标签:就会   如何   url   获取   数字   index   截取   解码   元素   

原文地址:http://www.cnblogs.com/zhangdiIT/p/7482861.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!