我正在尝试从表单填充 bean 列表:
public class Foo {
public String attr1;
public String attr2;
}
public class Bar {
public List<Foo> foos;
}
public class StrutsAction extends Action {
public Bar bar;
}
那么在我的 Struts2 表单中,填充 Foo 的最佳方式是什么?直觉上,我想做的是:
<input type="hidden" name="bar.foos.attr1" />
但这不起作用并且会导致碰撞。我确信答案非常简单,但我忽略了它。
如果我理解正确的话,您只是想为每个隐藏字段使用不同的名称?
<s:iterator value="bars" status="key">
<s:hidden name="bar.foos[%{#key.index}].attr1" value="attr1" />
<s:hidden name="bar.foos[%{#key.index}].attr2" value="attr2" />
</s:iterator>
这应该给你相当于
<input type="hidden" name="bar.foos[0].attr1" value="some value" />
<input type="hidden" name="bar.foos[0].attr2" value="some other value" />
<input type="hidden" name="bar.foos[1].attr1" value="some value" />
<input type="hidden" name="bar.foos[1].attr2" value="some other value" />
如果您有适当的 getter/setter,它应该在提交表单时设置所有值。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)