1.第一种方法(参数如果有中文的情况下,就会出现中文乱码)
http://127.0.0.1:8020/aaaaa/index.html?userId=127&mytype=90
获取url中的参数userId和mytype的值
var userId=getUrlParam("userId");
var mytype=getUrlParam("userId");
方法:
//获取url中的参数
function getUrlParam(name) {
var reg = new RegExp("(^|&)" + name + "=([^&]*)(&|$)"); //构造一个含有目标参数的正则表达式对象
var r = window.location.search.substr(1).match(reg); //匹配目标参数
if (r != null) return unescape(r[2]); return null; //返回参数值
}
2.第二种方法,很好处理
浏览器默认使用的是 encodeURL 对汉字进行编码的,所以在解码的时候就需要使用 decodeURL 而不是上诉代码中的 unescape,只要将上诉代码中 unescape 修改为 decodeURL 就可以解决中文乱码问题了。
function getQueryString(name) {
var reg = new RegExp("(^|&)" + name + "=([^&]*)(&|$)"); //构造一个含有目标参数的正则表达式对象
var r = window.location.search.substr(1).match(reg); //匹配目标参数
if( r != null ) return decodeURI( r[2] ); return null;
}