JS获取url参数及解决参数中包含中文时出现的乱码问题
程序员文章站
2022-04-03 08:20:49
...
H5页面通过url传参时需要通过JS获取url上的参数,以下两个方法配合使用,就可以获取到URL上携带的参数
url如:http://127.0.0.1:8848/zz-metro-op-H5/syx-activity/test.html?name=张三
//根据参数名来获取参数值
function getParamString(paraPart,name) {
var reg = new RegExp("(^|&)" + name + "=([^&]*)(&|$)");
var r = paraPart.substr(1).match(reg);
if (r != null) return unescape(r[2]); return null;
}
function getParamFromUrl(name){
var r = getParamString(window.location.search,name)
return r
}
console.log(getParamFromUrl('name')) // å¼ ä¸
上面输出的结果中,中文出现了乱码问题,这是因为浏览器默认使用的是 encodeURI 而我们用的是unescape进行的解码;
做如下修改即可解决中文乱码问题
function getParamString(paraPart,name) {
var reg = new RegExp("(^|&)" + name + "=([^&]*)(&|$)");
var r = paraPart.substr(1).match(reg);
// if (r != null) return unescape(r[2]); return null;
if (r != null) return decodeURI(r[2]); return null;
}
console.log(getParamFromUrl('name')) //张三
推荐阅读
-
.Net获取URL中文参数值的乱码问题解决方法总结
-
ASP.NET中url传递中文的解决方案,传递参数为汉字时出现乱码等问题
-
jquery获取URL中参数解决中文乱码问题的两种方法_javascript技巧
-
js、URL传递含有中文参数时的乱码问题解决
-
从js向Action传中文参数出现乱码问题的解决方法_javascript技巧
-
js、URL传递含有中文参数时的乱码问题解决
-
jquery获取URL中参数解决中文乱码问题的两种方法_javascript技巧
-
js获取url中的参数且参数为中文时通过js解码_javascript技巧
-
分享一个js向Action传中文参数时出现乱码的问题以及如何解决
-
从js向Action传中文参数出现乱码问题的解决方法_javascript技巧