当你进行表单提交用到get的方式的时候,经常会需要在跳转页面中获取URL中的参数,所以本篇就介绍获取URL参数的两种方法:

  • 正则法
  • split拆分法

正则法

通过正则表达式对URL进行匹配

函数代码

1
2
3
4
5
6
7
8
function GetQueryString(name) {
var reg = new RegExp('(^|&)' + name + '=([^&]*)(&|$)', 'i');
var r = window.location.search.substr(1).match(reg);//匹配URL的'?'符之后的正则表达式
if (r != null) {
return unescape(r[2]);
}
return null;
}

部分函数解析

RegExp()
RegExp 对象表示正则表达式,它是对字符串执行模式匹配的强大工具。
substr()
在字符串中抽取从 start 下标开始的指定数目的字符。
unescape()
对通过 escape() 编码的字符串进行解码。

split拆分法

函数代码

1
2
3
4
5
6
7
8
9
10
11
function GetQueryValue(queryName) {
var query = unescape(window.location.search.substr(1));
var vars = query.split("&");
for (var i = 0; i < vars.length; i++) {
var pair = vars[i].split("=");
if (pair[0] == queryName) {
return pair[1];
}
}
return null;
}