Возможно ли это?
Вот проблема:
У меня есть поиск по ключевым словам с этим URL (после поиска): http: // localhost / thi / search? Keyword = key
Затем у меня есть ползунок, который использует плагин AjaxForm (jquery) …
когда я выполняю поиск слайдера, очевидно, что я по-прежнему буду находиться в URL-адресе поиска по ключевым словам (потому что запрос отправляется через ajax)
Есть ли способ изменить текущий URL-адрес на что-то вроде http: // localhost / thi / search? Price = 100 (ползунок отправляется через GET с ценой в качестве переменной GET)
Я хочу сделать это, потому что хочу, чтобы результаты поиска с ползунка были помечены в закладки … или есть ли альтернативный способ сделать это?
Вы можете использовать хэш-URL (поиск # price = 100) с помощью методов window.location.hash
. Они получат закладки, и пользователь сможет перемещаться по ним с помощью кнопок «назад» и «вперед».
Пример использования:
<a href="#">100</a> $('a').click(function() { window.location.hash = 'price='+$(this).html(); return false; });
Установит URL для search#price=100
без обновления.
Лучшее, что я могу предложить для этого, – это использовать хэш в URL-адресе. Это позволит пользователям добавлять URL-адрес и сохранять статус, когда они возвращаются. Другое преимущество заключается в том, что вы можете изменить хеш без обновления страницы.
Таким образом, ваш URL-адрес будет выглядеть примерно так: http: // localhost / thi / search? Keyword = key # price = 100
Плагин JQuery Address отлично работает для этого.
С HTML5 это возможно. Используйте window.history.pushState ().
Пример :
if(currentHref!=window.location){ window.history.pushState({path:currentHref},'',currentHref); }
Подробности и объяснения: http://tinywall.info/2012/02/22/change-browser-url-without-page-reload-refresh-with-ajax-request-using-javascript-html5-history-api-php- JQuery-как-facebook-GitHub-навигации меню /