2012-11-12 98 views
0

這個問題是關於掛毯4(不是掛毯5)。 如果我嘗試在循環中呈現表單組件並提交一個表單,則驗證會在它們兩者中顯示錯誤,因爲tapestry只創建一個表單實例並重用它。似乎我需要爲每個表單提供唯一的ID,但我不知道如何。 下面是重現該問題的代碼:循環中的渲染表格

<block jwcid="[email protected]"> 
     <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> 

回答

0

驗證錯誤在瀏覽器中顯示兩次的原因是因爲在現實中你只有一種形式;你只是渲染兩次。如果您希望每個表單都有獨立的驗證處理,那麼您必須創建兩個單獨的@Form組件。