我想創建一個函數來從url中刪除特定的查詢字符串和它的值。從URL中刪除特定的查詢字符串
對於如: 如果我有像
VAR URL中的URL = www.foo.com/test?name=kevin &性別=男& ID = 1234
如果我通過名稱 - >它應該刪除名稱的鍵和值。該URL應該成爲
www.foo.com/test?gender=Male & ID = 1234
我有一個函數ReturnRefinedURL(key,url)
和我在功能做這個
function ReturnRefinedURL(key,url)
{
var Value = getParameterByName(key); // This returns kevin
var stringToBeRemoved = 'key +'='+ Value+'&'; // string becomes 'name=kevin&'
return url.replace(stringToBeRemoved, '');
}
//在Google中找到它:
function getParameterByName(name) {
name = name.replace(/[\[]/, "\\[").replace(/[\]]/, "\\]");
var regex = new RegExp("[\\?&]" + name + "=([^&#]*)"),
results = regex.exec(location.search);
return results == null ? "" : decodeURIComponent(results[1].replace(/\+/g, " "));
}
所以當我調用該方法ReturnRefinedURL('name',window.location.href);
這工作!但尋找一種更優雅,更傻的方法。
*這不會工作,如果名稱參數是查詢字符串中的第二個。 (以下簡稱「&」仍將被保留)
非常感謝..不知道我錯過了鏈接。我沒有搜索!:( – 2014-10-08 19:15:05
您可以請提供一個解決方案,它可以添加參數的單擊事件,也可以刪除該事件的參數 即我想添加新的參數或更改現有參數的值,並刪除一個單一的現有參數點擊 – Hetal1311 2017-08-13 17:38:27
可以更新區分大小寫的問題嗎? – Yiping 2017-10-26 07:08:49