Итак, у меня есть URL, который я получаю из базы данных внутри моего Java-кода.
public ActionForward executeAjaxShowTab(ActionMapping mapping, ActionForm form, HttpServletRequest request, HttpServletResponse response) {
String url = getUrl(); //returns something like https://foo.bar
request.setAttribute("form", url);
return mapping.findForward(ForwardConstants.FORWARD_TAB); //goes back to alert tab on the page, not a modal dialog
}
Что меня смущает, так это то, как передать вышеуказанный URL-адрес клиентской стороне, чтобы открыть URL-адрес в новой вкладке или окне браузера.Как я могу это сделать?Нужно ли мне установить новую страницу JSP, а затем установить URL на этой странице JSP или ..?У меня есть отдельный js-файл для всех js-функций, поэтому я не совсем понимаю, как отправить его в js, а затем связать js-файл, чтобы jsp знал об этой функции.
РЕДАКТИРОВАТЬ: Вот как я вызываю вышеупомянутый метод.
У текущего jsp (который является модальным диалоговым окном) есть кнопка:
<button onclick="launchForm()"> </button>
js:
launchForm= function() { var params=""; yuiPost("foo.do?subaction=ajaxShowTab", "content", params);}
Так что, если мне нужно поставить его на исходный jsp:
<script> var newTabUrl =${url}; window.open(newTabUrl); </script>
^ Что идет после кнопки?