可能重复:
如何获取查询字符串值?
我试图在测试期间从 URL 获取页码。URL 如下所示:
http://www.site.com/objects/search/8765XX/results?page=2&sort_att=posted_dt&sort_dir=desc
我想要得到的是 url 中 'page=' 之后的页码。
可能重复:
如何获取查询字符串值?
我试图在测试期间从 URL 获取页码。URL 如下所示:
http://www.site.com/objects/search/8765XX/results?page=2&sort_att=posted_dt&sort_dir=desc
我想要得到的是 url 中 'page=' 之后的页码。
在一行中,通过拆分 url。jsfiddle
var url = "http://www.site.com/objects/search/8765XX/results?page=2&sort_att=posted_dt&sort_dir=desc";
var pageNumber = parseInt(url.split("page=")[1].split("&")[0], 10);
我有这个小功能来获取 URL 参数(我多年前在互联网上找到了它):
function getUrlParameter(name, defaultValue) {
name = name.replace(/[\[]/,"\\\[").replace(/[\]]/,"\\\]");
var regexS = "[\\?&]"+name+"=([^&#]*)";
var regex = new RegExp( regexS );
var results = regex.exec( window.location.href );
if( results == null ) return defaultValue;
else return results[1];
}
我这样使用它:
pageNumber = parseInt(getUrlParameter('page'), 10);
我能想到的一个简单的纯 JavaScript 实现如下所示:
var url = http://www.site.com/objects/search/8765XX/results?page=2&sort_att=posted_dt&sort_dir=desc
var matchedPos = url.search("page=\\d");
var matched = url.substr(matchedPos);
var num = matched.split("=")[1]; //might need to parse