我试图在输入文本中显示数据库中的值以更新它。因此,当我单击该列时,程序会显示一个包含所有值的窗口,但是作为输入文本,因此用户无法更新值。
我使用PrimeFace 4,jsf和mysql作为数据库
<i>
<h:panelGrid id="display" columns="2" cellpadding="4">
<h:outputText value="ID:" />
<h:outputText value="#{usersBean.selectUser.idUtilisateur}"
style="font-weight:bold" />
<h:outputText value="Nom:" />
<h:inputText value="#{usersBean.selectUser.nomUtilisateur}"
style="font-weight:bold" />
<h:outputText value="Prenom" />
<h:inputText value="#{usersBean.selectUser.prenomUtilisateur}"
style="font-weight:bold" />
<h:outputText value="Indentifiant" />
<h:inputText value="#{usersBean.selectUser.identifiUtilisateur}"
style="font-weight:bold" />
</h:panelGrid>
<i/>
答案 0 :(得分:1)
任何输入字段都应该在表单内(h:表单可以)进行处理。如果您只想输出数据,可以省略它。但在这种情况下,为此任务使用“输出”元素会更“正确”。
由于您使用PrimeFaces,我强烈建议您使用p:inputText(http://www.primefaces.org/showcase/ui/inputText.jsf)。它具有h:inputText的所有属性,但与PF处理器更兼容。
要在inputText中显示任何值,您只需在提供的托管bean中初始化它。当然,如果您使用部分提交方法,请不要忘记更新您尝试显示值的元素/容器。