這段jQuery代碼片段用於獲取URL中作為參數存儲的動態變量,並將它們存儲為JavaScript變量,以便與您的腳本一起使用。與哈希URL的使用方式不同,因為世界正在轉向動態Web應用程序。因此,諸如解碼URL字符串之類的操作在未來幾年內將一直很流行。
$.urlParam = function(name){ var results = new RegExp('[\?&]' + name + '=([^]*)').exec(window.location.href); return results[1] || 0; } // example.com?param1=name¶m2=&id=6 $.urlParam('param1'); // name $.urlParam('id'); // 6 $.urlParam('param2'); // null // 带空格的参数示例 http://www.jquery4u.com?city=Gold Coast console.log($.urlParam('city')); //输出:Gold%20Coast console.log(decodeURIComponent($.urlParam('city'))); //输出:Gold Coast
這可以用於設置文本輸入字段的默認值,例如:
$('#city').val(decodeURIComponent($.urlParam('city')));
感謝bjverde對該函數的改進:
$.urlParam = function(name){ var results = new RegExp('[\?&]' + name + '=([^]*)').exec(window.location.href); if (results==null){ return null; } else{ return results[1] || 0; } }
要使用jQuery獲取URL參數,您可以使用window.location.search
屬性。此屬性返回URL的查詢字符串參數。然後,您可以使用substring()
方法刪除查詢字符串開頭的問號。之後,您可以按&字符分割參數。這是一個簡單的示例:
var params = window.location.search.substring(1).split('&');
現在,params
數組中的每個元素都表示一個URL參數。您可以進一步按等號分割每個參數,以分離參數名稱和值。
jQuery.param()
方法是一個實用程序函數,它創建數組或對象的序列化表示。當您想從數組或對象創建查詢字符串時,這很有用。這是一個示例:
var params = { name: 'John', age: 30 }; var queryString = $.param(params);
在此示例中,queryString
將是字符串“name=John&age=30”。
是的,您可以使用純JavaScript獲取URL參數,而無需使用jQuery。 JavaScript中的window.location
對象提供了可用於處理當前URL的屬性和方法。例如,您可以使用window.location.search
屬性獲取查詢字符串參數。
jQuery沒有提供設置URL參數的內置方法。但是,您可以使用JavaScript中的window.location
對象來更改URL。如果您想在不重新加載頁面的情況下更改URL,可以使用history.pushState()
方法。
要刪除特定的URL參數,您可以首先使用window.location.search
屬性獲取所有參數。然後,您可以創建一個不包含要刪除的參數的新查詢字符串。之後,您可以使用history.pushState()
方法設置新的查詢字符串。
您可以通過使用window.location.search
屬性獲取所有參數來檢查URL參數是否存在。然後,您可以分割參數並檢查您要查找的參數是否在數組中。
是的,您可以使用window.location.hash
屬性處理URL中的哈希參數。此屬性返回URL中哈希符號後面的部分。
要獲取多個URL參數,您可以使用window.location.search
屬性並按&字符分割參數。結果數組中的每個元素都表示一個URL參數。
是的,您可以使用JavaScript中的history.pushState()
方法在不重新加載頁面的情況下更改URL。此方法會向瀏覽器的歷史記錄添加一個新條目。
當使用jQuery進行AJAX請求時,您可以在URL字符串中包含URL參數。或者,您可以使用$.ajax()
方法中的data
選項來包含參數。此選項會自動將對像或數組轉換為查詢字符串。
以上是使用jQuery獲取URL參數的詳細內容。更多資訊請關注PHP中文網其他相關文章!