【问题标题】:Render form in cycle循环渲染表单
【发布时间】:2012-11-12 14:39:32
【问题描述】:

这个问题是关于 Tapestry 4(不是 Tapestry 5)。 如果我尝试在循环中渲染表单组件并提交一个表单,验证会在两者中显示错误,因为 Tapestry 只创建一个表单实例并重用它。似乎我需要为每个表单提供唯一的 id,但我不知道如何。 这是重现问题的代码:

    <block jwcid="formBlock@Block">
        <form jwcid="@Form">
            <input jwcid="@TextField" value="literal:" validators="validators:required" />
            <input type="submit" />
        </form>
    </block>
    <for jwcid="@Foreach" source="ognl:new int[]{1,2}">
        <span jwcid="@RenderBlock" block="component:formBlock" />
    </for>

【问题讨论】:

    标签: java jakarta-ee tapestry


    【解决方案1】:

    验证错误在浏览器中显示两次的原因是因为实际上您只有一个表单;你只是渲染它两次。如果您希望每个表单都有单独的验证处理,那么您必须创建两个单独的 @Form 组件。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2010-12-24
      • 1970-01-01
      • 2013-04-28
      • 1970-01-01
      • 2021-06-03
      • 2018-08-08
      • 2010-11-12
      相关资源
      最近更新 更多