我試圖在測試期間得到URL的頁碼。該URL看起來是這樣的:
http://www.site.com/objects/search/8765XX/results?page=2&sort_att=posted_dt&sort_dir=desc
我想要得到的是頁碼右後頁面='在URL中。
我試圖在測試期間得到URL的頁碼。該URL看起來是這樣的:
http://www.site.com/objects/search/8765XX/results?page=2&sort_att=posted_dt&sort_dir=desc
我想要得到的是頁碼右後頁面='在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);
這是一個乾淨的解決方案;) – scusyxx
當我把它放入Selenium-IDE,我得到Null 'num'的值(我之前將url存儲到一個名爲'url'的變量中。 storeEval | var url = storedVars ['url']; var pageNumber = parseInt(url.split(「page =」)[1 ] .split(「&」)[0],10); | – Klendathu
好吧,讓它能夠工作在Selenium IDE中使用它 storeEval | javascript {storedVars ['V1'] .split(「page =」) [1] .split(「&")[0];} |# num讓我獲得頁碼。 – Klendathu
我有這個小功能來獲取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
那你試試? – Cfreak
通過回答http://stackoverflow.com/questions/901115/how-can-i-get-query-string-values –