function getUrlParam(name) {
var Url = window.location.href,
obj = {},
arr_1 = '',
arr_2 = '';
if(Url.indexOf('#') >= 0) { //有#
arr_1 = Url.split('#')[0];
} else {
arr_1 = Url;
}
if(Url.indexOf('%') >= 0) { //有%
arr_1 = Url.split('%')[0];
} else {
arr_1 = Url;
}
if(Url.indexOf('?') >= 0) { //判断是否已有路由
arr_2 = arr_1.split('?')[1].split('&');
$.each(arr_2, function(i, d) {
var a = d.split('=');
obj[a[0]] = a[1];
});
return obj[name] ? obj[name] : undefined;
} else { //没有参数
return undefined
}
}
使用例子:var value= getUrlParam('name');//name参数名称
以上方法,只适合接收参数值是英文或者数字,接收不了中文
如下方法,可接收中文参数值:
function getQueryString(name) {
var reg = new RegExp("(^|&)" + name + "=([^&]*)(&|$)", "i");
var r = window.location.search.substr(1).match(reg);
if (r != null) {
return decodeURI(r[2]);
} else {
return null;
}
}
var appName = getQueryString('name');