Вы не можете. Если вы хотите установить строку запроса (?something=something
), вы должны установить ее (и, таким образом, вызвать перезагрузку страницы), изменив location.search
(только строка запроса) или location.href
- ничего AJAXish / Web2 .0ish;)
Хеш - это часть на стороне клиента после знака #
, которая никогда не отправляется на сервер. Он предназначен исключительно для нацеливания на элементы страницы (например, для <h2 id="something">
используется хеш #something
), и в настоящее время он хранит информацию о состоянии в URL, поэтому кнопки A / A продолжают работать в приложениях AJAX (даже если это в конечном итоге быть заменен функцией pushState в HTML5).
Если вы все еще хотите использовать хэш, сделайте это google-совместимым способом . В основном это означает, что вы должны использовать #!something
в хэше, где something
также может быть частью реального URL в классическом (не AJAX) запросе.