在play框架中进行客户端表单验证

时间:2014-04-15 17:26:42

标签: html5 validation twitter-bootstrap playframework

我想在我的表单中进行此类验证 enter image description here

当用户提交空表单时,该字段应为红色并带有消息。 我的 create.scala.html

@(signupForm: Form[models.Member])

@import helper._
@import helper.twitterBootstrap._

@main(Html("Create User")) {

    @form(action = routes.UserController.submit(), 'id -> "userCreationForm", 'class -> "form-horizontal", 'role->"form") {
        <fieldset>
           <legend><h1> Account Information</h1></legend>

<div class="form-group">
            @inputText(signupForm("firstName"),
            '_label -> "First name:",
            'class -> "form-control",
            '_help -> "Please enter your first name.")
            </div>

<div class="form-group">
            @inputText(signupForm("lastName"),
            '_label -> "Last name:",
            'class -> "form-control",
            '_help -> "Please enter your last name.")
            </div>

<div class="form-group">
            @inputText(signupForm("email"),
                        '_label -> "Email Address:",
                        'class -> "form-control",
                        '_help -> "Enter a valid email address.",
                        '_error -> signupForm.globalError)
                        </div>

<div class="form-group">
            @inputPassword(signupForm("password"),
                            '_label -> "Password:",
                            'class -> "form-control",
                            '_help -> "A password must be at least 6 characters.")
                            </div>
        </fieldset>

        <div class="form-group">
            <input type="submit" class="btn btn-primary" value="Sign Up">
            <a href="@routes.ApplicationController.index" class="btn">Cancel</a>
        </div>
    }

}

并将<script src="@routes.Assets.at("javascripts/jquery-1.9.0.min.js")" type="text/javascript"></script>添加到我的 main.scala.html

但是它没有提供所需的输出意味着当用户提交空表单时不显示消息和带红色的字段 提前谢谢。

1 个答案:

答案 0 :(得分:1)

Play没有用于前端表单验证的内置解决方案,您需要使用一些lib,即jQuery Validation Plugin

您从示例表单app向我们展示的验证是一个后端 - 它在User.java模型中的模型和/或表单中设置了约束。

有关Forms documentation

中约束的详情