【问题标题】:JSF forms when submit提交时的 JSF 表单
【发布时间】:2012-07-25 18:27:53
【问题描述】:

如果我们有几个像下面这样的表单,当我最终按下提交按钮时,它应该将所有值从“froms1 到 forms3”发送到服务器。有可能吗?我正在使用 primefaces。

<h:form id="forms1">
 <inputText .........
 </h:form>
......
<h:form id="forms2">
 ......
</h:form>
.......
<h:form id="forms3">
.....
</h:form>

<p:commandButton value="submit" action="#{bean.action}" onSubmit="this.forms1,this.forms2,this.forms3" partialSubmit="true" />

【问题讨论】:

  • 那你为什么需要3种不同的形式呢?
  • 它真的有用吗? 不应该在
    内吗?
  • 如果您可以编辑您的帖子并回答 Jigar 问题会更好。如果没有充分的理由拥有 3 个不同的表格,那么您应该使用 1 个大表格来捕获所有数据。如果您的表单位于 或类似的内部,并且其中包含内部提交,则应添加 execute="@container" 属性以改进发送到服务器的数据。

标签: jsf jsf-2 primefaces ajax4jsf


【解决方案1】:

您可以将一些 hacky 解决方案放在一起,用一个按钮提交 3 个表单,但最好只使用 1 个表单和表单内的 1 个提交按钮。

如果您使用多个表单来区分事物的外观,请尝试使用字段集。 Primefaces 甚至还有一个 fieldset 组件&lt;p:fieldset&gt;&lt;/p:fieldset&gt;

【讨论】:

    【解决方案2】:

    提交多个表单不是一个好主意,但您可以通过以下代码提交..

    <p:commandButton title="Submit" value="Submit" action="#{bean.action}" process="form1,form2,form3">
    

    这可能对你有用 4...

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2012-02-17
      • 2015-02-01
      • 2011-03-24
      • 2013-04-17
      • 1970-01-01
      • 1970-01-01
      • 2011-06-16
      • 1970-01-01
      相关资源
      最近更新 更多