0

我正在拦截用户对分页链接的点击,我只需要从该链接中提取页码,该链接始终设置在页面变量中。

所以在我的js里面我有....

var a = $a.attr("href");

.. 输出这个

/Home/GetTabData?page=2&activeTab=House

那么我怎样才能从page=之后只提取这个数字

如果重要,请记住这个数字可以是两位或三位长,并且 activeTab 是动态值。

谢谢

4

2 回答 2

2

使用一些regex,您可以像这样提取它:

var num = +(a.match(/page=(\d+)&/)[1]);

在上面的代码中:

  1. /page=(\d+)&/是匹配 和 之间的数字(一个或多个数字字符)的正则"page="表达式"&"。请注意,我们已经分组了(\d+)这是我们之后的数字

  2. +前缀用于将提取的字符串转换为数字。这类似于使用parseInt()

于 2013-03-29T11:31:50.523 回答
0

获得链接后,在本例中为 a,您只需使用 indexOf() 在字符串中搜索“page=”,然后从那里创建一个子字符串到下一个 & 字符。

var start, end, value;
start = a.indexOf("page=");
end = a.indexOf("&", start);
value = a.substring(start+5, end);

有关 IndexOf() 的更多信息 http://www.w3schools.com/jsref/jsref_indexof.asp

于 2013-03-29T11:35:59.237 回答