想要獲取url的參數,只要記?。簎rl的參數是存在window.location.search中的,然后再根據參數的個數等特點用不同的方式截取,或者匹配即可。
方法一:正則法
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;}// 調用(注:記得打引號*--*)GetQueryString("參數名");方法二:單個參數的獲取方法
function GetRequest() { var url = location.search; //獲取url中"?"符后的字串 if (url.indexOf("?") != -1) { //判斷是否有參數 var str = url.substr(1); //從第一個字符開始 因為第0個是?號 獲取所有除問號的所有符串 strs = str.split("="); //用等號進行分隔 (因為知道只有一個參數 所以直接用等號進分隔 如果有多個參數 要用&號分隔 再用等號進行分隔) alert(strs[1]); //直接彈出第一個參數 (如果有多個參數 還要進行循環的) }}方法三:split拆分法
function GetRequest() { var url = location.search; //獲取url中"?"符后的字串 var theRequest = new Object(); if (url.indexOf("?") != -1) { var str = url.substr(1); strs = str.split("&"); for(var i = 0; i < strs.length; i ++) { theRequest[strs[i].split("=")[0]] = unescape(strs[i].split("=")[1]); } } return theRequest;}var Request = new Object();Request = GetRequest();// var 參數1,參數2,參數3,參數N;// 參數1 = Request['參數1'];新聞熱點
疑難解答