我有一个创建复选框和文本输入字段的模板:
@helper.checkbox(inputForm("live"), 'checked -> true, 'onclick -> "hideTextFields()")
@helper.inputText(inputForm("target"), 'disabled -> true)
取消选中该复选框后,文本字段将变为可见(反之亦然)。这是在一个名为hideTextFields()的javascript函数中完成的。
现在,在控制器中我需要一个约束,一旦取消选中复选框,就会强制文本输入字段。
我有一个映射:
"live" -> boolean
"target" -> nonEmptyText
但这总是需要指定目标。
如何根据复选框的状态为文本输入字段实现动态约束。 Play是版本2.3.4。
谢谢你,最诚挚的问候!
答案 0 :(得分:0)
查看有关映射的验证方法,您可以从tuple()
和mapping()
简单示例:
val sample = Form(
tuple(
"checkbox" -> boolean,
"text" -> text
).verifying(
"If checkbox checked text cannot be empty",
(tuple) => !tuple._1 || tuple._2.nonEmpty)
)
您可以在"定义临时约束"下找到另一个示例。在播放框架文档中:The playframework docs