//1.window.location.hrefvar a ="1018802,8"var b ="1"window.location.href="../EditPosts.aspx?postid="+a+"&update="+b;//2.字符串模板,动态生成href属性var c = ‘<a class=" " href="../EditPosts.aspx?postid=\‘‘+a+‘\‘)">查看地址</a>‘
var url=window.location.hrefvar pars=url.split("?")[1].split("=")[1].split(",")[1];//例如 https://i.cnblogs.com/EditPosts.aspx?postid=1018802,8&update=1//执行到split("?")[1] => "postid=1018802,8&update=1"//执行到split("&")[1] => "1018802,8&update"//执行到split(",") => ["1018802,8","update"]//执行到split(",")[1] => "1018802,8"
反复截取,有点繁琐哎~
window.location.href 或者 location.href 或者 window.location 获得地址栏中的所有内容
decodeURI()可以解码地址栏中的数据 恢复中文数据
window.search 获得地址栏中问号及问号之后的数据
//获取地址栏里(URL)传递的参数 function GetRequest(value) { //url例子:www.bicycle.com?id="123456"&Name="bicycle"; var url = decodeURI(location.search); //?id="123456"&Name="bicycle"; var object = {}; if(url.indexOf("?") != -1)//url中存在问号,也就说有参数。 { var str = url.substr(1); //得到?后面的字符串 var strs = str.split("&"); //将得到的参数分隔成数组[id="123456",Name="bicycle"]; for(var i = 0; i < strs.length; i ++) { object[strs[i].split("=")[0]]=strs[i].split("=")[1] } } return object[value]; }
这种方法其实原理和上一种方法类似,都是从URL中提取,只是提取的方法不同而已。
function GetQueryString(name) { var reg = new RegExp("(^|&)" + name + "=([^&]*)(&|$)"); var r = window.location.search.substr(1).match(reg); if (r != null) { return unescape(r[2]); } return null; }
this.$route.path 当前页面路由this.$route.params 路由参数this.$route.query 查询路由参数