Ajax загружает содержимое и добавляет связанные URL-адреса

Я пытаюсь использовать Ajax в проекте.

Идея заключается в том, что когда я нажимаю вкладку, соответствующие данные должны загружаться в соответствии с этой вкладкой.

Но он также должен добавить URL-адрес в адресную строку текущей формы, в которой я нахожусь.

Предположим, я щелкнул вкладку ERP, поэтому элементы ERP Div должны загружаться внутри страницы, но относительный URL-адрес также должен показывать, например, www.mydomain.com\erp.

Я знаю о функции .load, но с ней не обновляется URL-адрес в адресной строке. плюс данные будут поступать из разных файлов.

Также левосторонние меню будут поступать из базы данных на базе ролей.

я использую codeigniter в этом проекте

я хочу иметь функциональность URL, так как пользователю будет легко получить доступ к этой странице напрямую с полным URL-адресом, плюс это также дает преимущество в закладках.

Вот скриншот для большего удобства. введите здесь описание изображения


person Sizzling Code    schedule 13.03.2013    source источник
comment
Вы можете обслуживать обычную пустую страницу, а когда дом готов, вы запускаете запрос ajax и заполняете страницу.   -  person Damien Pirsy    schedule 14.03.2013


Ответы (2)


Насколько я знаю, вы не можете изменить фактический URL-адрес без перезагрузки страницы.

Вам нужно будет использовать библиотеку jquery-address. Посетите https://github.com/asual/jquery-address.

person simshaun    schedule 13.03.2013
comment
Это на самом деле не так. history.pushState() позволяет изменить URL-адрес без перезагрузки страницы. - person Devin Young; 14.03.2013
comment
Спасибо за ответ, из-за вашего ответа я думал найти библиотеки. и библиотека адресов jquery хороша, но я нахожу библиотеку jquery bbq более удобной. Во всяком случае, спасибо, что поделились ссылкой на jquery-адрес. - person Sizzling Code; 28.04.2013

Я бы сделал две разные вещи здесь:

  1. Чтобы динамически изменить URL-адрес без загрузки страницы, используйте новый history.pushState() метод. Если вы поддерживаете старые браузеры, history.js — это, по сути, тот же API, который использует хэштег. метод. Обратите внимание, что эти URL-адреса недоступны извне. Таким образом:

  2. Когда пользователь переходит по одному из этих URL-адресов, по умолчанию открытая вкладка соответствует той, которую вы пытаетесь открыть. Вам нужно будет захватить предполагаемый маршрут и поработать над ним магией javascript.

person Devin Young    schedule 13.03.2013