如何将带参数的路径接收

如何将带id参数的路径接收

<a href="b.html?a=1&b=2&c=3#e=4&d=5">b页面</a>
<a href="c.html?a=1&b=2&c=3#e=4&d=5">c页面</a>

首先给他们一些路径参数之类的
在b页面里接收
在这里插入图片111

	function myFun(attr){
		console.log(location);
		var serachStr=location.search;
		var obj=fun2(serachStr);
		
		return obj[attr];
	}
	
	
	function fun2(str){
		// console.log("str:",str);
		var str2=str.slice(1);
		// console.log("str2:",str2);
		var arr=str2.split("&");
		// console.log("arr:",arr);
		var obj={}
		for(var i=0;i<arr.length;i++){
			//console.log("arr[i]:",arr[i]);
			var arr2=arr[i].split("=");
			// console.log("arr2:",arr2);
			obj[arr2[0]]=arr2[1];
		}
		// console.log("obj:",obj);
		// return str;
		return obj;
	}
	
	var r1=myFun("a");
	console.log("r1:",r1);//r1等于谁就可以获取谁
	
	// var url = 	location.search
	// var index = url.substring(url.lastIndexOf('/') + 1);
	// 	console.log(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;
	// 	}
	// 	//获取http://caibaojian.com/?p=177.html的p值
	// 	getUrlParam(console.log("a")); //输出177
		
		//  getUrlParam()
		//  function getUrlParam() { 
		//      var url = location.search; //获取url中"?"符后的字符串包括‘?’ ,window.location.href获取的是url完整的字符串
		//      var theParam = new Object(); 
		//      if (url.indexOf("?") != -1) { //确保‘?’不是最后一个字符串,即携带的参数不为空
		//          var str = url.substr(1); //substr是字符串的用法之一,抽取指定字符的数目,这里抽取?后的所有字符
		//          strs = str.split("&"); //将获取到的字符串从&分割,输出参数数组,即输出[参数1=xx,参数2=xx,参数3=xx,...]的数组形式
		//          for(var i = 0; i < strs.length; i ++) { //遍历参数数组
		//              theParam[strs[i].split("=")[0]]=unescape(strs[i].split("=")[1]); //这里意思是抽取每个参数等号后面的值,unescape是解码的意思
		//          } 
		//      } 
		//      return theParam;
		// 	 }
		

在这里插入图片描述
这样就获取出来他们带的参数了


	function myFun(attr){
		console.log(location);
		var serachStr=location.search;
		var hashStr=location.hash;
		
		var obj={};
		fun2(obj,serachStr);
		fun2(obj,hashStr);
		
		
		return obj[attr];
	}
	
	
	function fun2(obj,str){
		
		var str2=str.slice(1);
		
		var arr=str2.split("&");
		
		
		for(var i=0;i<arr.length;i++){
			
			var arr2=arr[i].split("=");
			
			obj[arr2[0]]=arr2[1];
		}
		console.log("obj:",obj);
		
		return obj;
	}
	
	var r1=myFun("e");
	console.log("r1:",r1);

在这里插入图片描述
这种方法也可以获取到

猜你喜欢

转载自blog.csdn.net/dongdongaa0/article/details/109205890
今日推荐