2015-04-28 163 views
1

有沒有辦法刪除下面代碼的URL中的#符號?從Location.Hash中刪除標籤

$('input').on('keyup', function (event) { 
    var hashLink = "?" + $(this).attr("name") + "=" + $(this).val(); 
    location.hash = hashLink; 
}); 

如果在Input中輸入名稱「David」,我會在URL中收到下面的響應。

http://localhost:51746/#?FirstName=David

我試圖把.substring(1)在hashLink的結束,但它僅刪除?符號。

有沒有簡單的方法來刪除#,而爲var hashLink的字符串拉?

謝謝!

回答

1

這就是一個散列,#符號。如果你想剛纔設置的查詢字符串你這樣做,通過改變location.search未散,但並重新加載頁面,因爲它應該

$('input').on('keyup', function (event) { 
    var hashLink = $(this).attr("name") + "=" + $(this).val(); 

    window.location.search = hashLink; 
}); 
+0

我試圖設置查詢字符串無需重新加載頁面,因爲我想這與ajax請求一致。我不確定是否有方法使用子字符串或切片來刪除哈希。我嘗試了多種方式,但都不成功。 – cs03295

+0

有沒有簡單的方法來改變URL而不重新加載頁面,除了改變散列,而散列需要使用'#'字符,這就是告訴瀏覽器不要重新加載頁面,所以你不能刪除並在不重定向瀏覽器的情況下更改網址。那麼,如果你使用歷史API,你可以,但是這一切都不一樣。 – adeneo