【jQuery】ブラウザのURLのGETパラメータを変えたい

未分類

メソッド

以下のメソッドを作った(js)。

// getパラメータの更新
function setUrlGetParam(param, value)
{
    clearUrlGet();

    // URLを取得
    var url = new URL(window.location.href);

    // URLSearchParamsオブジェクトを取得
    var params = url.searchParams;

    params.set(param, value);

    // ブラウザのURLを置き換える
    history.replaceState('', '', url);
}

// URLの「?」以降をクリア
function clearUrlGet()
{
    var get_param = window.location.href.substring(window.location.href.indexOf("?"));
    var default_url = window.location.href.replace(get_param, '');

    history.replaceState('', '', default_url);
}

使い方

例えば、ブラウザのURL「https://xxxx.com/top?ctg=baseball」のGETパラメータ「ctg」の値「baseball」を「soccer」に変えたいときは、以下のように書く。

setUrlGetParam('ctg', 'soccer');

ブラウザのURLを見ると、以下のように変わっている。

「https://xxxx.com/top?ctg=soccer」

コメント

タイトルとURLをコピーしました