0

目前我正在研究一种包含 2 个按钮的表单。单击 1 个按钮,我得到如下的 html 字段块。

`

<table width="100%">
    <tbody><tr>

      <td class="style4" width="12%" align="center">CODE<span class="style3"> </span></td>
      <td width="18%"><input name="c_code[]" value="" id="c_code__" class="box_border" style="width: 120px;" type="text"></td>
      <td class="style3" width="15%" align="right">Price</td>
      <td width="7%"><input name="c_price[]" value="" id="c_price__" class="box_border" style="width: 40px;" type="text"></td>
      <td class="style3" width="4%" align="right">Qty</td>
      <td width="7%"><input name="c_qty[]" value="" id="c_qty__" class="box_border" style="width: 40px;" type="text"></td>
      <td class="style3" width="9%" align="right">On Sale </td>

      <td width="3%"><input name="c_onsale[]" id="c_onsale__" value="" type="radio">    
<label for="c_onsale"></label>
</td>
      <td class="style3" width="10%" align="center">Exposition</td>
      <td width="15%"><input name="c_exposition[]" size="15" value="" id="c_exposition__" class="box_border" type="text"></td>
    </tr>
  </tbody></table>

`

现在,每次用户单击上面给出的按钮时,整个块都将使用 ajax 方法调用包含在 html 表单中。

  1. 现在我的问题是如何在 struts2 动作类中获取所有元素的值作为数组。或者如何为这些数组编写 setter 和 getter 方法。

有没有更好的方法以其他方式执行上述操作,让我的工作更轻松?

  1. 如何为这样的数组字段编写struts2验证文件?

任何人都可以在这件事上帮助我。

谢谢。

4

2 回答 2

2

好的,如果您可以在每次迭代时使用数组中的索引重命名字段,那么它们将被命名为 c_name[0]、c_name[1] 等...然后您可以在您的操作类中定义一个数组并映射将毫无问题地完成。至于验证,我建议对您的操作进行服务器端验证。

问候,

于 2009-10-09T13:38:39.107 回答
0

在服务器端使用 List 而不是数组,struts 会自动将新部分(UI 上的新元素块)映射到它。

如果将其定义为数组,则每次都无法初始化新部分,因为大小无法动态增加

于 2014-04-02T16:42:17.933 回答