我有两个在单击时生成输入文本的按钮。问题是,当这两个按钮在同一个按钮上时xhtml
,无论是第一个按钮,它都是唯一起作用的按钮。
如果您需要,以下是对Code 1的解释:
它代表两个inputtexts
获得a 的作者的name
和。表示属于 Managed Bean的方法。email
Document
moreAuthors
getMoreAuthors()
inserirBean
getMoreAuthors()
返回一个List<AuthorBean>
。这List<AuthorBean>
是 Managed Bean 的一个属性inserirBean
。该类AuthorBean
创建 的实例Author
,它有一个名为 的属性
Author author
。
AddAuthor()
在 Managed Bean 中AuthorBean
再添加一个。List<AuthorBean>
inserirBean
如果您需要,下面是对代码 2的解释:
它遵循与代码 1相同的结构。在这里,只有一个
inputtext
用于获取 a的主题Document
。
moreSubjects
返回一个List<SubjectBean>
。该类SubjectBean
创建该类的实例Subjects
。
SubjectBean
有一个属性Subject sub
,并且Subject
有一个名为 的属性String subject
。
AddSubject()
在 Managed Bean 中SubjectBean
再添加一个。List<SubjectBean>
inserirBean
代码 1- 如果这是 上唯一的一个xhtml
,它可以工作:
<h:form >
<h:dataTable value="#{inserirBean.moreAuthors}" var="authorBean">
<h:column>
Nome do Autor:
<h:inputText value="#{authorBean.author.name}" />
</h:column>
<h:column>
Email do Autor:
<h:inputText value="#{authorBean.author.email}" />
</h:column>
<f:facet name="footer">
<h:panelGroup>
<h:commandButton value="+" action="#{inserirBean.addAuthor()}" />
</h:panelGroup>
</f:facet>
</h:dataTable>
</h:form>
2- 如果这是 上唯一的一个xhtml
,它也可以:
<h:form >
<h:dataTable value="#{inserirBean.moreSubjects}" var="subjectBean">
<h:column>
Palavras-chave:
<h:inputText value="#{subjectBean.sub.subject}" />
</h:column>
<f:facet name="footer">
<h:panelGroup>
<h:commandButton value="+" action="#{inserirBean.addSubject}" />
</h:panelGroup>
</f:facet>
</h:dataTable>
</h:form>
但是,如果我把这两个块放在同xhtml
一个块上,首先出现在浏览器上的块总是有效,而第二块永远不会 - 我已经尝试改变它们的位置,但无论我把哪个放在屏幕上都是那个有效的。
是什么导致了这个问题?
谢谢!