我有这个班级
public Class Employee
{
String name;
List<Address> listOfAddress;
}
public Class Address
{
String location;
String streetName;
}
在我的JSP页面中,我已经填写了这样的
<s:textfield id="streetName" name="listOfAddress[%{listOfAddress.size()}].streetName" size="20" maxlength="24" cssStyle="width: 100px" />
每次我提交页面时,时间对象地址被添加到列表中,因此大小将增加1。 当我查看前一个textField的源HTML时,它的名字看起来像这个listOfAddress [0] .streetName,如果我在成功添加后提交JSP页面,它将返回到同一页面,这个textfield的名称将是listOfAddress [ 1] .streetName 如果您查看其HTML源
并且像这样我可以添加尽可能多的地址,因为我想要相同的Employee对象。
到目前为止一切正常。问题是当我想要验证这个字段时,因为它是动态的 如果我进行此验证,它将仅在第一次验证它。
<field name="listOfAddress[0].streetName">
<field-validator type="requiredstring" short-circuit="true">
<param name="trim">true</param>
<message>sorry this field is required field</message>
</field-validator>
</field>
我想要的是根据列表的大小使列表的索引“listOfAddress”dymanic。
我不知道如何从jsp传递它的动态
我可以做这样的事吗? <field name="listOfAddress[**${dynamic index value}**].streetName">
<field-validator type="requiredstring" short-circuit="true">
<param name="trim">true</param>
**<param name="myIndex">${dynamic index value}</param>**
<message>sorry this field is required field</message>
</field-validator>
</field>
或将动态值传递给自定义验证器?
请帮助我,如何在索引动态时验证列表
答案 0 :(得分:0)