使用jQuery或JavaScript从url中删除参数

时间:2015-11-19 20:48:13

标签: javascript jquery

Hello stackoverflow社区。我需要想法和帮助。是否可以从链接中删除该分页?例如:http://example.com/comp-filter/page/2/所以我需要删除那个页面/ 2 /我不知道如何,因为这个数字可以从1到永恒。那么我该怎么做才能使用jquery或javascript删除它。请帮忙?为了替换我正在使用的参数:

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;
}

但是查这段代码不会有帮助...

1 个答案:

答案 0 :(得分:1)

HTML5的history api正是您所需要的。

您要做的是replaceState

  

history.replaceState()与history.pushState()完全相同,只是replaceState()修改当前历史记录条目而不是创建新条目。

所以,你的代码就像是:

history.replaceState(data, document.title, newUrl);

对于实际替换,您应该尝试使用正则表达式:

oldUrl.replace(/page\/\d+\/?/, '');

此致,亚历山大