Перенаправление Spring MVC: новая страница открывается в div

Вот проблема, с которой я столкнулся.

У меня есть страница jsp с функцией javascript openForm. Эта функция извлекает данные с URL-адреса сервера, которые относятся к dialog.jsp, и вставляет этот код в тело моей страницы. т.е. это выглядит как

function showDialog(url){
    $.get(url,function(data){
        $("body").append(data);
    })
}

Хорошо, но после того, как пользователь разберется с этим диалогом, я хочу перенаправить его в какое-то лучшее место. Я использую return createRedirectModelAndView(URL_CONSTANT) в контроллере, отвечающем за обработку POST из этого диалога.

Это работает, но вот проблема: новая страница (цель перенаправления) открывается ВНУТРИ этого диалогового блока. Таким образом, родительская страница (на которой пользователь щелкает showDialog) все еще существует, и похоже, что перенаправление перенаправляет пользователя внутрь диалогового окна. Этот эффект может быть крутым в некоторых ситуациях, но не в моей. Я хочу полного перенаправления - закройте эту страницу и откройте другую.

Где я ошибся?


person KutaBeach    schedule 10.11.2011    source источник
comment
похоже, что ваше событие клика должно быть нацелено на _top, а не на _self   -  person Kevin    schedule 10.11.2011
comment
Кевин, на самом деле всплывающего окна нет, диалог — это просто div.   -  person KutaBeach    schedule 10.11.2011


Ответы (1)


Если вы хотите перенаправить вызов Ajax, вам следует вернуть URL-адрес перенаправления с сервера и выполнить изменение перенаправления/местоположения из JavaScript.

person Dave Newton    schedule 10.11.2011