2016-12-22 33 views
2

這是我這不重定向當前代碼:如何在JavaScript中將頁面重定向到自己?

window.location.href= '/post/' + data.main_id + '/' + subject + '#post-' + data.post_id; 

以上代碼只是改變了蛞蝓,當我在同一個URL來的。無論如何,我需要改變slu and並重新加載頁面。我怎麼能通過JS甚至jQuery來做到這一點?但是,你可以進一步通過使用pushState和避免需要在所有重新加載頁面改善此

window.location.href += '#post-' + data.post_id; 
window.location.reload(); 

注:

回答

3

可以通過先追加片段的URL,然後重新加載頁面實現這一目標當片段改變時。

+0

嗯,這是偉大的..謝謝你,給予好評,但有時我並不總是在同一個頁面。我的意思是,有時我需要重定向*(不只是改變slu))* .. –

+0

在這種情況下,您根本不需要'重載()':'window.location.assign('foo.html#post-12345') ' –

+0

當我們在同一個頁面時,使用'assign()'不會重新加載。你知道,我需要一個代碼**總是** *(總是意味着當我在同一頁面,當我在另一個頁面)**都重新加載頁面並更改slug。 –

0

您可以使用

location.reload(); 

請參閱 ​​3210

+1

1)如何更改URL中的##片段? 2)請不要使用W3School作爲參考。他們提供的信息往往過時,有時甚至完全不正確。 [MDN](https://developer.mozilla.org/en-US/docs/Web/JavaScript)更加全面和可靠。 –

+0

pushState()可能更適合更改URL,而不是window.location.href,更多詳細信息請參見https://developer.mozilla.org/en-US/docs/Web/API/History_API –

相關問題