Проблема:
i) В приложении JSF2 я хочу создать страницу с элементом управления вкладками, где, когда пользователь нажимает на вкладку, содержимое панели ниже загружается из файла xhtml на сервере посредством вызова ajax. />
II) Я хочу, чтобы это поддерживало постепенное ухудшение (когда Javascript отключен), чтобы при нажатии на вкладку запускался HTTP-запрос и загружалась новая страница ... или наоборот, путем постепенного улучшения. />
Частичные решения:
я) Я думаю, что я могу сделать это с помощью примера кода, опубликованного BalusC в Как ajax jsf 2 outputLink
: -
<h:form>
<f:ajax render=":include">
<h:commandLink value="Home" action="#{menuManager.setPage('home')}" /><br />
<h:commandLink value="FAQ" action="#{menuManager.setPage('faq')}" /><br />
<h:commandLink value="Contact" action="#{menuManager.setPage('contact')}" /><br />
</f:ajax>
</h:form>
<h:panelGroup id="include">
<ui:include src="#{menuManager.page}.xhtml" />
</h:panelGroup>
Вопрос
Как я могу расширить это, чтобы решить проблему (ii) Или есть какой-то другой совершенно другой метод? Я думаю может быть Я мог бы достичь этого с помощью noscript, но не могу понять, как!
РЕДАКТИРОВАТЬ: возможное решение - еще предстоит проверить :
Приведенный выше код должен работать, даже если ajax отключен; он должен работать только через HTTP, согласно http://www.laliluna.de/articles/posts/jsf-2-evaluation-test.html :)
Элегантный! Я попробую.