今天碰到要在一個頁面獲取另一個頁面url傳過來的參數,一開始很本能的想到了用 split("?")這樣一步步的分解出須要的參數。javascript
後來想了一下,確定會有更加簡單的方法的!因此在網上找到了兩個很又簡單實用的方法,mark下html
方法一:正則分析法java
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;
}url
這樣調用:spa
alert(GetQueryString("參數名1"));
alert(GetQueryString("參數名2"));
alert(GetQueryString("參數名3"));code
方法二:htm
?blog
<SPAN style=
"FONT-SIZE: 16px"
><Script language=
"javascript"
>
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;
}
</Script></SPAN>
|
這樣調用:ip
<Script language="javascript">
var Request = new Object();
Request = GetRequest();
var 參數1,參數2,參數3,參數N;
參數1 = Request['參數1'];
參數2 = Request['參數2'];
參數3 = Request['參數3'];
參數N = Request['參數N'];
</Script>ci