我有这个班

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" />

每次我提交页面时,都会将时间对象添加到列表中,因此大小将增加一。 当我查看先前textField的源HTML时,其名称类似于此listOfAddress [0] .streetName,如果在添加成功后提交JSP页面,它将返回到同一页面,并且此文本字段的名称将为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”的索引动态变化。

我不知道如何从jsp传递dynamicall

我可以做这样的事情吗?

    <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> 

还是将动态值传递给自定义验证器?

请帮助我,如何在动态索引时验证列表

#1楼 票数:0 已采纳

使用访客验证器。 参见http://struts.apache.org/2.x/docs/using-visitor-field-validator.html

  ask by user1512999 translate from so

未解决问题?本站智能推荐:

2回复

Struts 2验证字段(如果不为空)

表单中有两个字段,电子邮件和电话号码(整数)。 使用struts验证框架(ActionClass-validation.xml)验证表单。 这两个字段是可选的,因此用户可以将它们留为空白。 但是,如果它们不是空白,则需要验证字段。 请帮助我找出如何在xml中编写验证器来做到这一点。
1回复

Struts2验证器

我面临着一个struts验证器问题。 我有一个这样的对象: 和: 和 我想在MyAction-validation.xml系数上添加一个验证器,但我不知道该怎么做。 我知道如何添加一个简单的验证器,但是当我有带有submap的子列表时:( 我生成的html代
1回复

Struts2 表单字段验证不起作用 [重复]

这个问题在这里已经有了答案: Struts2 'Required' 字段验证拦截器不起作用(1 个回答) 5年前关闭。
1回复

如何在Struts2的日期字段验证器中指定最大参数?

这是我的日期类型的验证字段,而current是一个在动作类中具有get&setter的隐藏变量: <param name="min">01/01/1920</param> <param name="max">${new java.util.Date(curr
1回复

拦截器不允许在struts2中显示字段错误

在这里,我包括了一个用于登录目的的拦截器类。但是在struts.xml中提到它之后,当我单击注册页面上的注册按钮时,在struts表单上看不到字段错误。 以下是我的struts.xml。 请更正我应该将LoginInterceptors类的拦截器放在哪里。 下面是我的struts.xml
1回复

在Struts 2中链接访问者验证器

动作类具有要验证的属性。 该属性是一个类(MyClass1),其属性之一也是一个类(MyClass2)。 每个要验证的类将由多个操作使用,因此我为每个类定义了“MyClass * -validation.xml”。 我遇到的问题是尝试使用MyClass1中的访问者验证程序来验证My
1回复

Struts2中的转换和验证问题

我从事支柱工作已经很长时间了。 我正在使用Struts 2在应用程序中模拟程序验证和转换错误。 在我的应用程序中,有一个名为Product的模型类,如下所示: 我有一个名为ProductForm.jsp jsp,请用户在其中输入如下产品信息: <%@taglib ur
1回复

如何在struts2中验证日期格式

我尝试警告用户输入非(DD-MON-YYYY)格式的日期时 我面临的问题是我已经使用xml验证来验证我的jsp。 当我用谷歌搜索时,我们仅在struts2 xml验证中检查日期范围。 这是我的jsp。 这是我的xml验证 我的动作类正在实现模型驱动的接口。 请帮助我如