a链接里面带着参数跳转,当参数为中文的时候,获取到的中文参数是乱码(浏览器对其编码过的)。
想用参数需要一个解码函数:decodeURIComponent(a链接里的参数)
获取a链接参数的方法:
//获取a链接中的参数 function getAdata(){ 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; }
获取方式:
链接例子:
var a = "https://i.cnblogs.com/posts/edit?name=哈哈";
var name = getAdata().name //获取到参数name的值
对 name 进行解码 name = decodeURIComponent(name);
这样就可以正确取到中文参数了
注意:getAdata()方法是自定义的,调用的自定义方法获取的