[英]Remove query param from URL on button click not working
我想刪除按鈕單擊URL中的查詢參數,以便將鏈接從www.example.com/?queryparam=hello
修改為www.example.com/
。
當我嘗試:
window.location.href.split('?')[0];
在控制台中,它返回href減去查詢參數(正確)。 但是在實際的瀏覽器測試中,它不會在實際的按鈕單擊上執行代碼。
這是我的代碼:
window.addEventListener('message', function(event) {
if (window.location.href.indexOf('?queryParam=') > -1) {
$('.button').click(function() {
window.location.href.split('?')[0];
});
}
return;
}, false);
拆分和訪問數組不會使原始字符串變異。 您在控制台中將其視為基本URL的原因是,它的評估結果為www.example.com
但您並未更改原始的window.location.href
。 重新分配:
window.location.href = window.location.href.split('?')[0];
您的代碼:
window.location.href.split('?')[0];
只是一種表達。 它評估為一個值,基本上沒有影響。 重新分配將按預期更改位置。 請注意,不需要window
(除非您有一個名為location
的局部變量)。 您也可以將其縮短為:
location = location.href.split('?')[0];
甚至:
location.assign(location.href.split('?')[0]);
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.