Я поддерживаю приложение JSF2 Ajax, и мы активно используем теги h:commandLinks
и f:ajax
для всех действий - всегда перерисовываем только то, что необходимо.
Это, конечно, нарушает ожидаемое поведение пользователя при щелчке правой кнопкой мыши по ссылкам и выборе «Открыть ссылку в новой вкладке» и т. д.
Я понимаю, что f: ajax заставляет атрибут href результирующего элемента a
быть #
и выполняет все трюки с волшебным пост-запросом в функции onclick. Теперь я хочу обеспечить резервную поддержку для действия «Открыть ссылку ...», поместив какая-то значимая ссылка в атрибуте href результирующего тега <a>
.
Это не нарушило бы «нормальное» поведение при нажатии, поскольку сгенерированный javascript всегда заканчивается return false;
, но позволило бы мне отправлять моих пользователей на какую-либо страницу с помощью обычного запроса GET, если они хотят открыть ссылку в новом окне.
Есть ли способ сделать это? Или может кто-нибудь указать мне правильное направление в том, где в жизненном цикле JSF мне нужно будет прыгнуть, чтобы сделать это, возможно, используя прослушиватель фазы?