0

我正在为 java 使用 play 2.2.0

public String email;
public String validate(){

    if(email!= null &&(email.endsWith("@xyz.com") )){
        return null;
    }
    System.out.println("error");
    return "Please Add valid xyz  email id only ";
}

以上是我验证电子邮件的代码

我的问题是如果用户输入错误的电子邮件 ID,如何在表单中显示“请仅添加有效的 xyz 电子邮件 ID”

我试过了

@helper.inputText(playerForm("email"), '_label -> "Email",'_help -> "Must be xyz id",   
    '_showConstraints -> false,
    '_showErrors -> true,
    '_error -> playerForm.error("email")
)

但它不工作

4

2 回答 2

1

只是为了提供另一种解决方案,您可以根据需要使用 validate() 方法的三个版本。您正在使用最简单的方法,您只需返回“NULL”或“String”错误消息。其他两个版本允许您在特定字段上指定多个错误(因此它们不会转到“全局”错误映射。

public List<ValidationError> validate(){
  ...
}

public Map<String, List<ValidationError>> validate(){
  ...
}

与版本一样,如果没有错误String,您只需返回。NULL如果您确实有错误,那么您将填充一个ListMap一个或多个错误。地图版本允许您在多个字段上指定错误。

new ValidationError("email", "Please add valid xyz email id only.");
于 2013-11-13T20:24:08.650 回答
0

得到了答案。 它会出现全局错误,您可以通过它

@if(form.hasGlobalErrors) {
   <div class="alert alert-error">@form.globalError.message</div>
}
于 2013-11-13T17:53:37.637 回答