使用jQuery或JavaScript从url中删除参数
问题描述:
Hello stackoverflow社区。我需要想法和帮助。是否有可能从链接中删除该分页?例如:http://example.com/comp-filter/page/2/所以我需要删除该页面/ 2 /并且我不知道如何,因为这个数字可以从1到永恒。那么我能做些什么来删除它使用jQuery或JavaScript。请帮助?对于更换参数我使用:使用jQuery或JavaScript从url中删除参数
function setGetParameter(paramName, paramValue)
{
var url = window.location.href;
if (url.indexOf(paramName + "=") >= 0)
{
var prefix = url.substring(0, url.indexOf(paramName));
var suffix = url.substring(url.indexOf(paramName));
suffix = suffix.substring(suffix.indexOf("=") + 1);
suffix = (suffix.indexOf("&") >= 0) ? suffix.substring(suffix.indexOf("&")) : "";
url = prefix + paramName + "=" + paramValue + suffix;
}
else
{
if (url.indexOf("?") < 0)
url += "?" + paramName + "=" + paramValue;
else
url += "&" + paramName + "=" + paramValue;
}
return url;
}
但chaning这段代码不会帮助...
答
HTML5的history api是你在找什么。您想要做的是replaceState
。
history.replaceState()的运行方式与history.pushState()完全相同,只是replaceState()修改了当前历史记录,而不是创建新历史记录。
所以,你的代码将是水木清华这样的:
history.replaceState(data, document.title, newUrl);
在实际更换你应该尝试的正则表达式:
oldUrl.replace(/page\/\d+\/?/, '');
最好的问候,亚历山大
您可以使用常规表达? – thatidiotguy
jQuery **是** JavaScript。 – morkro
是的,我可以使用它 – McLaren