Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Java программирование > Java для Web (EE, Servlet, JSP, Tomcat, Spring MVC)
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 13.02.2018, 12:21   #1
botan32
Пользователь
 
Регистрация: 26.11.2015
Сообщений: 52
По умолчанию Навигация по меню без перезагрузки страницы.

Всем добрый день. Очень нужна помощь. Пишу Web-приложение на Java в NetBeans. Есть меню из трех <a href="#">Меню</a> которые должны открывать JSP странички (каждая ссылка свою страницу). Как это сделать правильно без перезагрузки основной страницы (index.jsp) и в браузере в адресной строке менялся адрес? Заранее спасибо. Приложение во вложении. Если я двигаюсь в неправильном направлении, то прошу меня поправить.
Вложения
Тип файла: rar WebApp.rar (20.0 Кб, 10 просмотров)
botan32 вне форума Ответить с цитированием
Старый 13.02.2018, 12:43   #2
Alex11223
Старожил
 
Аватар для Alex11223
 
Регистрация: 12.01.2011
Сообщений: 19,500
По умолчанию

А оно точно надо? Это называется Single Page App (SPA), делать/поддерживать/тестировать их как правило намного сложнее, поэтому по возможности лучше избегать.

Если это просто какие-то небольшие элементы типа вкладок в профиле, то можно просто style="display: none" изначально и потом .toggle(), .hide/.show и т.п. в jQuery. Ну или подгружать нужный HTML с помощью ajax и вставлять через .html().
Ушел с форума, https://www.programmersforum.rocks, alex.pantec@gmail.com, https://github.com/AlexP11223
ЛС отключены Аларом.
Alex11223 вне форума Ответить с цитированием
Старый 13.02.2018, 13:25   #3
botan32
Пользователь
 
Регистрация: 26.11.2015
Сообщений: 52
По умолчанию

Сейчас я использую Jquery для отображения страниц без перезагрузки. В адресной строке URL не меняется, хотя на всех сайтах когда переходишь по меню меняется и URL. Как это правильно сделать и как это происходит?
botan32 вне форума Ответить с цитированием
Старый 13.02.2018, 13:29   #4
Alex11223
Старожил
 
Аватар для Alex11223
 
Регистрация: 12.01.2011
Сообщений: 19,500
По умолчанию

Если менять то, что после #, то и пропишите его в href.
Ушел с форума, https://www.programmersforum.rocks, alex.pantec@gmail.com, https://github.com/AlexP11223
ЛС отключены Аларом.
Alex11223 вне форума Ответить с цитированием
Старый 13.02.2018, 14:45   #5
botan32
Пользователь
 
Регистрация: 26.11.2015
Сообщений: 52
По умолчанию

Если я пропишу все в href, то страницы будут открываться в новом окне браузера, а не в текущем. А мне необходимо что бы меню оставалось всегда.
botan32 вне форума Ответить с цитированием
Старый 13.02.2018, 15:50   #6
Alex11223
Старожил
 
Аватар для Alex11223
 
Регистрация: 12.01.2011
Сообщений: 19,500
По умолчанию

Я же говорил, что если надо менять просто часть адреса после #, то и пишите ее в href="#...".
Ушел с форума, https://www.programmersforum.rocks, alex.pantec@gmail.com, https://github.com/AlexP11223
ЛС отключены Аларом.
Alex11223 вне форума Ответить с цитированием
Старый 13.02.2018, 16:06   #7
botan32
Пользователь
 
Регистрация: 26.11.2015
Сообщений: 52
По умолчанию

С этим понятно, но нужно изменить часть адреса, что бы не было # в href. Например: нажимаю на ссылку "Домашняя страница" и у меня в URL должно отображаться имя http://localhost:8080/WebApp/home; если нажимаю на ссылку "Пользователи", то в URL должно отобразиться http://localhost:8080/WebApp/users
botan32 вне форума Ответить с цитированием
Старый 13.02.2018, 16:51   #8
Alex11223
Старожил
 
Аватар для Alex11223
 
Регистрация: 12.01.2011
Сообщений: 19,500
По умолчанию

Тогда это неправда — "на всех сайтах когда переходишь по меню меняется и URL".
Не происходит так на всех сайтах.

На большинстве сайтов меню реализовано обычным переходом с перезагрузкой страницы, а где ajax, то часто меняется именно #.

Ну если таки надо весь адрес, то смотрите History API.
Ушел с форума, https://www.programmersforum.rocks, alex.pantec@gmail.com, https://github.com/AlexP11223
ЛС отключены Аларом.
Alex11223 вне форума Ответить с цитированием
Старый 13.02.2018, 17:04   #9
botan32
Пользователь
 
Регистрация: 26.11.2015
Сообщений: 52
По умолчанию

А как тогда реализовано смена контента, а меню остается постоянным? Я понимаю что через ajax. Но когда я делаю через ajax, то url у меня не изменяется.
botan32 вне форума Ответить с цитированием
Старый 13.02.2018, 17:16   #10
Alex11223
Старожил
 
Аватар для Alex11223
 
Регистрация: 12.01.2011
Сообщений: 19,500
По умолчанию

Я уже перечислил все варианты, что в них непонятного?
Ушел с форума, https://www.programmersforum.rocks, alex.pantec@gmail.com, https://github.com/AlexP11223
ЛС отключены Аларом.
Alex11223 вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Голосование без перезагрузки страницы Nick888 PHP 2 26.12.2014 09:21
Голосование Без Перезагрузки Страницы Nick888 WordPress и другие CMS 0 23.12.2014 21:56
Submit без перезагрузки страницы Tyoma5891 PHP 21 05.03.2014 16:53
Навигация без перезагрузки Glavar JavaScript, Ajax 6 11.01.2011 23:14
Динамическое изменение URL страницы в JavaScript без перезагрузки страницы ilusha JavaScript, Ajax 7 25.02.2009 09:59