Kembali ke halaman sebelumnya terlepas dari perubahan string kueri

Aug 17 2020

Saya memiliki halaman dengan tabel yang dapat dicari. Saya telah menulis tombol "Kembali" untuk kembali ke halaman sebelumnya:

<a href="javascript:history.back()">Back</a>

Misalnya, URL beranda saya adalah:

https://xxxxxx.com

Saya masuk ke halaman dengan tabel yang dapat dicari dari beranda saya (Atau halaman lainnya) :

https://xxxxxx.com/data

Ketika saya melakukan pencarian, URL-nya menjadi:

https://xxxxxx.com/data?search=*sth*

Saat saya menekan tombol "Kembali", URL-nya menjadi:

https://xxxxxx.com/data

Yang sebenarnya saya inginkan adalah:

https://xxxxxx.com/

(Atau halaman tempat pengguna masuk sebelumnya /data)


Bagaimana cara menulis ulang javascript saya pada tombol pencarian, sehingga tombol Kembali dapat membuka halaman yang sebenarnya?

Jawaban

3 MauriceNino Aug 17 2020 at 15:36

Alih-alih history.back(), yang kembali hanya satu, Anda bisa melakukannya window.location.replace(window.location.host), yang memuat halaman root.

Untuk mendapatkan info lebih lanjut tentang window.location:https://developer.mozilla.org/en-US/docs/Web/API/Window/location

Edit:

Jika Anda ingin mengabaikan parameter URL, Anda perlu mengubah cara Anda membuka halaman lain.

Alih-alih window.history.pushState(...), Anda harus menggunakan window.history.replaceState(...), saat navigasi harus diabaikan pada klik kembali.

Di sini lebih banyak untuk membaca tentang topik itu: Apa trade off antara history push and replace?