url=''detail.html?name='+item.name+'&id='+item.id+'&src='+item.picsrc"
方法一,
function getQueryString(name) {
var reg = new RegExp('(^|&)' + name + '=([^&]*)(&|$)', 'i');
var r = window.location.search.substr(1).match(reg);
if (r != null) {
return unescape(r[2]);
}
return null;
}
var name=getQueryString("name")//中文会出现乱码情况
console.log(decodeURIComponent(name))//参数为中文是会发生乱码,解码
英文或者是数字就不用解码了
方法2,把参数返回在字典里了
function getData(){
if(document.URL.indexOf("?")<0) return;//获取当前url地址,如果没参数.直接返回
var str=document.URL.split("?")[1];
var obj={};
var arr;
//当只有一个参数传过来时
if(str.indexOf("&")<0){
if(str.indexOf("=")<0) return;
arr=str.split("=");
obj[arr[0]]=arr[1];
return obj;
}
//当有多个参数时
arr=str.split("&");
var arr1;
for(var i=0;i<arr.length;i++){
arr1=arr[i].split("=");
obj[arr1[0]]=arr1[1];
}
return obj;
}
console.log.(getData())
方法3,同方法1类似
function getUrlParam(name) {//a标签跳转获取参数
var reg = new RegExp("(^|&)" + name + "=([^&]*)(&|$)", "i");
var r = window.location.search.substr(1).match(reg);
if (r != null) return (r[2]); return null;
}