Как сохранить URL нажатой гиперссылки - PullRequest
0 голосов
/ 13 июля 2011

Я отображаю диалоговое окно с предупреждением, когда пользователь пытается перейти с текущей страницы без сохранения данных на текущей странице. Теперь он работает нормально. Я хочу вызвать функцию (контроллер Spring, своего рода Java-функцию, которая обрабатывает сопоставления URL-адресов), когда пользователь нажимает Ok (в диалоговом окне с предупреждением), а затем он должен перенаправиться на нужную страницу.
Позвольте мне попытаться сделать это простым (это сбивает с толку и меня)
1) Пользователь находится на странице регистрации, он внес некоторые изменения и не сохранил их.
2) Теперь пользователь нажал на любую другую ссылку, например, он щелкнул ссылку About Us.
3) Теперь я хочу выполнить свой пружинный контроллер.
4) После запуска контроллера пользователь должен перейти на страницу About Us.
Для этого мне нужно сохранить значение нажатой гиперссылки и передать его моему контроллеру пружины.
Итак, как я могу сохранить URL ссылки, по которой щелкнули (URL страницы About Us в приведенном выше примере)?

PS: Я буду очень признателен, если кто-нибудь сможет отредактировать мой вопрос, чтобы его было легче понять.

Ответы [ 3 ]

1 голос
/ 13 июля 2011

если вы используете jQuery, вы можете прикрепить обработчик событий, чтобы он щелкнул по всем ссылкам на странице, и после щелчка обработчик должен сохранить атрибут href в некоторой переменной. затем создайте прослушиватель события onbeforeunload в своем окне, где вы можете использовать значение по своему усмотрению, вызвать контроллер или сохранить значение в файле cookie или в другом месте.

1 голос
/ 13 июля 2011

Все ли ссылки на странице указывают на ваше весеннее приложение?Если нигде нет внешних ссылок (указывающих на внешний ресурс) - тогда вы можете написать простой Фильтр , в котором вы можете сохранить запрошенную страницу в сеансе.

В противном случае, если есть ссылкик внешним ресурсам - вам нужно будет переписать их с www.external.com на www.my.com\MagicController?requestedPage=www.external.com.Контроллер сохранит ссылку и отправит перенаправление в HTTP-заголовке на запрашиваемую страницу.Это обычная практика - даже Google делает это (посмотрите ссылки результатов поиска Google, чтобы посмотреть, как это будет выглядеть).

Добавлено: Странно, но Google делает это только в некоторых редких случаях.в некоторых случаях, так что вы, вероятно, не сможете найти пример там.

0 голосов
/ 13 июля 2011

Не требуется сохранять href выбранной вкладки. Одна вещь прикрепите одну и ту же функцию javascript к каждой вкладке и передайте «this» в качестве параметра функции.

Функция javascript:

function Attach(ele)  
{

// 1. Find the handle of selected tag and store in the variable. 
   ele=$(ele);

// 2. Find the value of href
   var href=ele.attr("href");

// 3. Perform server side operation you want.

// 4. redirect to another page.
   window.location=href;

  return false;

}
...