标签:
http://localhost:2907/content.html?id=1099&name=kangjia像之前一直不知道怎么在页面中获取页面传递过来的参数(id=1099&name=kangjia)
先来贴一段代码:
function getQueryStr(name) { var reg = new RegExp("[\?\&]" + name + "=([^\&]*)(\&?)"); var value = window.location.search.match(reg); //window.location.search.toString()获取请求参数 if (value) { value = decodeURIComponent(value ? value[1] : value); } return value; }
通过这个方法可以获取我想要的参数
var reg = new RegExp("[\?\&]" + name + "=([^\&]*)(\&?)");
这行代码是声明一个正则字符串根据传过来的参数形成的字符串。例如:传过啦的参数是"id"那么reg=new RegExp("[\?\&]id=([^\&]*)(\&?)");
var value = window.location.search.match(reg);
这行代码是获取我们的请求参数并且将请求参数根据我们形成的参数正则表达式进行切割分组(0:?id=1099&;1:1099;2:&)
if (value) { value = decodeURIComponent(value ? value[1] : value); }
decodeURIComponent(str);js自带的方法;
方法二:
function getRequest(name) { var result = null; var url = window.location.search;//?id=1099&name=taowang if (url.indexOf("?") != -1) { var url = url.substr(1);//id=1099&name=taowang var arr = url.split("&");//id=1099 name=taowang for (var i = 0; i < arr.length; i++) { if (arr[i].indexOf(name) != -1) { result = arr[i].substr(name.length + 1); break; } /* var results = arr[i].split("="); for (var j = 0; j < results.length; j++) { if (name == results[0]) { result = results[1]; } }*/ } } return result; }
标签:
原文地址:http://www.cnblogs.com/sstw/p/4980884.html