Bài viết này sẽ hướng dẫn cho bạn cách thay đổi đường dẫn trên thanh địa chỉ của trình duyệt mà không cần phải tải lại trang web. Bạn có thể áp dụng cho các trường hợp sau khi submit form thì trên đường dẫn có thêm các tham số, bạn muốn loại bỏ các tham số này và cho địa chỉ trở về như ban đầu.
// Đường dẫn trước khi sửa đổi http://localhost/globe/wp-admin/admin.php?page=sb_theme&settings-updated=true (function(){ setTimeout(function(){ sb_option.find('div.updated').fadeOut(3000); var page_url = window.location.href; if(page_url.indexOf('settings-updated') >= 0) { page_url = page_url.slice(0, page_url.indexOf('&')); window.history.pushState('string', '', page_url); } }, 2000); })(); // Đường dẫn sau khi sửa đổi http://localhost/globe/wp-admin/admin.php?page=sb_theme
Trong ví dụ trên, mình đã xử lý để cắt bớt các tham số được gắn thêm phía sau đường dẫn ban đầu. Quan trọng là bạn phải có bước kiểm tra xem đường dẫn hiện tại bạn có cần thay đổi hay không. Cuối cùng là bạn dùng hàm pushState để thay đổi thanh địa chỉ.
window.history.pushState('string', '', page_url);