前端页面选择时间乱码_web前端页面解决中文传参乱码问题

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

假设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

var d=c[i].split("=")[1]; //从=处将字符串分割成字符串数组,并选择第2个元素

arr.push(d); //将获取的元素存入到数组中

}

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

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值