js截取get参数乱码问题之解决

举个例子说一下:

1
http://wwww.yctech.com/blog/post?id=1

像这样的话,通常通过如下代码直接截取不用做任何处理:

1
2
3
4
5
6
7
function getQueryString(name) {
var result = window.location.search.match(new RegExp("[\?\&]" + name + "=([^\&]+)", "i"));
if (result == null || result.length < 1) {
return "";
}
return result[1];
}

但是当http://wwww.yctech.com/blog/post?id=1 变成http://wwww.yctech.com/blog/post?id=挑战者

这时,如果用getQueryString(name)方法截取的话,那么就会出现乱码,对于这种乱码的解决方式也很简单:
就是通过encodeURI()解决。

如:

1
2
3
var ids = getQueryString("id");//乱码
var id = encodeURL(ids);//处理乱码
alert(id);//弹出挑战者

参考资料如下:
js传url中文参数乱码问题

文章目录