Jsf <;h:输入文本>;不更新
我有一个带有表单和输入文本的页面,它表示bean的值。在页面底部,我有一个导航按钮,可以转到下一个条目:Jsf <;h:输入文本>;不更新,jsf,Jsf,我有一个带有表单和输入文本的页面,它表示bean的值。在页面底部,我有一个导航按钮,可以转到下一个条目: <h:form id="customerData"> ... <h:outputText value="#{customeredit.customer.name}" /> <br /> <h:inputText size="60" id="name" value="#{customeredit.customer.name}"
<h:form id="customerData">
...
<h:outputText value="#{customeredit.customer.name}" />
<br />
<h:inputText size="60" id="name" value="#{customeredit.customer.name}" />
...
</h:form>
<p:commandButton value="Next customer" action="customers" ajax="false" id="nextCustomer">
<f:param name="linkageAreaId" value="#{customeredit.nextCustomer.id}" />
</p:commandButton>
...
...
如果我点击按钮,页面将重新加载,一个新的customer对象将在后台加载,除了inputText之外,所有条目都将更新。outputText会更改,但inputText始终保留初始化时获得的值。我还与getter进行了检查,getter返回的值随着新客户的变化而变化,但inputText中显示的值始终保持不变。如果嵌套表单(HTML格式),则可能会发生这种情况,因此输入和按钮最终都以相同的表单结束。然后该按钮也会提交输入字段。在任何情况下,都不应使用
进行页到页导航。改用
<p:button value="Next customer" outcome="customers" id="nextCustomer">
<f:param name="linkageAreaId" value="#{customeredit.nextCustomer.id}" />
</p:button>
不要忘记修复嵌套表单问题
另见:
action=“{myBean.actionNextGuy()”
),我无法复制JSF的哪个版本?@Jean:试试看,让我知道。我认为引发错误的嵌套表单可能取决于所使用的浏览器。好的,行为是“未确定的”