Refer:Http://blog.sina.com.cn/s/blog_5f0d2f4b0100ttrd.html
The main principle is to use a regular expression to match strings in location. Search.
Three main methods:
Method |
Description |
Getquerystring |
Obtain the array of querystring. For example, define querystringdemo.html? Id = 5 & type = 1 & flag = 0 ["Id = 5", "Type = 1", "flag = 0"] |
Getquerystringbyname |
Obtain the value based on the querystring parameter name. |
Getquerystringbyindex |
Retrieve Value Based on querystring parameter index |
// Obtain the querystring Array
Function getquerystring (){
VaR result = location. Search. Match (New Regexp ("[\? \ &] [^ \? \ &] + = [^ \? \ &] + "," G "));
If (result = NULL ){
Return "";
}
For (VAR I = 0; I <result. length; I ++ ){
Result [I] = Result [I]. substring (1 );
}
Return result;
}
// Obtain the value based on the querystring parameter name
Function getquerystringbyname (name ){
VaR result = location. Search. Match (New Regexp ("[\? \ &] "+ Name +" = ([^ \ &] +) "," I "));
If (result = NULL | result. Length <1 ){
Return "";
}
Return result [1];
}
// Obtain the value based on the querystring parameter index
Function getquerystringbyindex (INDEX ){
If (Index = NULL ){
Return "";
}
VaR querystringlist = getquerystring ();
If (index> = querystringlist. Length ){
Return "";
}
VaR result = querystringlist [Index];
VaR startindex = result. indexof ("=") + 1;
Result = result. substring (startindex );
Return result;
}
Another method:
String. Prototype. getquerystring = function (name ){
VaR Reg = new Regexp ("(^ | & | \\?) "+ Name +" = ([^ &] *) (& | $) "), R;
If (r = This. Match (REG) return R [2];
Return NULL;
};
Use: location. Search. getquerystring ("parameter name ");