У меня есть основная страница HTML, которая включает в себя detail.xhtml и duo.xhtml.JSF включает и дублирует HTML-идентификаторы
Теперь duo.xhtml также включает в себя detail.xhtml, что приводит к дублированию идентификаторов, которые, конечно, это не работает. Что я могу сделать для решения этой проблемы? Я не хочу управлять избыточным кодом.
Главная:
<ui:composition ...>
<ui:define name="center">
<ui:insert name="insertDuo">
<ui:include src="/includes/duo.xhtml" />
</ui:insert>
...
<p:dialog header="x" widgetVar="detDialog" id="dlg" modal="true" appendTo="@(body)">
<ui:insert name="insertDetail">
<ui:include src="/includes/detail.xhtml" />
</ui:insert>
Duo:
<ui:composition>
<p:dialog header="y" widgetVar="newDuoDialog" id="newDuoDlg" modal="true" >
<p:layout id="layout">
<p:layoutUnit position="west">
<ui:insert name="insertDetailStmt">
<h:form id="stmtDetailForm">
<ui:include src="/includes/detail.xhtml" />
</h:form>
</ui:insert>
</p:layoutUnit>
деталь:
<p:accordionPanel id="accordion">
Ссылка на компоненты:
<p:commandButton value="z" update=":accordion:duoDlgForm2:pickList"/>
и как бы мой '<ч: outputLabel>' s, например, относятся к ''? Я думаю, что у ваших вторых предложений не хватает деталей. Я не могу понять, что вы посоветуете мне делать точно –
dasLort
Я сильно не согласен с @DarkFalcon, так как он раньше не работал с JSF. Во всяком случае, похоже, что вы не добавляете идентификатор из контейнера, например. '', ''; или вы эффективно используете дубликаты идентификаторов на обеих страницах, поэтому просто измените их. Было бы лучше, если бы вы предоставили образец кода. –
@LuiggiMendoza: Правильно, на самом деле, я не видел тег. Я видел xhtml и предполагаемые HTML-идентификаторы. Мои извинения. –