我有一个像http://www.test.pl/product-pol-4406.html
这样的网址使用Geasemonkey脚本我想从URL获取“4406”部分,但我不知道该怎么做。我的代码是:
var input=document.createElement("input");
input.type="button";
input.value="Edytuj";
input.alt="visitPage";
input.onclick = visitPage;
input.setAttribute("style", "font- size:18px;position:absolute;top:120px;right:40px;");
document.body.appendChild(input);
function visitPage(){
window.location='https://test.pl/panel/product-edit.php?idt=4406';
}
有什么建议吗?请。
答案 0 :(得分:0)
使用以下功能在javascript中获取'idt'值
function getParameterByName(name, url) {
if (!url) url = window.location.href;
name = name.replace(/[\[\]]/g, "\\$&");
var regex = new RegExp("[?&]" + name + "(=([^&#]*)|&|#|$)"),
results = regex.exec(url);
if (!results) return null;
if (!results[2]) return '';
return decodeURIComponent(results[2].replace(/\+/g, " "));
}
var result= = getParameterByName('idt');
答案 1 :(得分:0)
只需使用
var url = window.location.href;
获取完整的网址。根据您的需要,您可以使用正则表达式解析URL以获得所需内容,或者例如将它拆分为使用与您正在使用的URL类型有关的分隔符获取部分内容。
答案 2 :(得分:0)
如果您想从给定的URL获取产品ID,然后传递给php页面。你可以试试这个
var url = "http://www.test.pl/product-pol-4406.html" //window.location.href
if(url){
url = url.substr(url.lastIndexOf("/") + 1);
var productID = url.match(/\d+/);
alert(productID);
}
更新
function getProductID(){
var url = "http://www.test.pl/product-pol-4406.html" //window.location.href
if(url){
url = url.substr(url.lastIndexOf("/") + 1);
return url.match(/\d+/);
}
}
然后在visitePage()
函数
function visitPage(){
var productID = getProductID();
if(productID){
window.location='https://test.pl/panel/product-edit.php?idt='+productID;
}
}