尽管问题已经得到解答,但我想举一个完整的例子,因为这对我有很大帮助。
您可以在名为“app/views/helper/inputHidden.scala.html”的文件中定义自己的隐藏输入助手,该文件如下所示:
@**
* Generate a hidden HTML input.
*
* Example:
* {{{
* @inputHidden(field = myForm("name"), args = 'data-ref -> 0)
* }}}
*
* @param field The form field.
* @param args Set of extra attributes.
* @param handler The field constructor.
*@
@(field: play.api.data.Field, args: (Symbol,Any)*)(implicit handler: FieldConstructor, lang: play.api.i18n.Lang)
@id = @{ args.toMap.get('id).map(_.toString).getOrElse(field.id) }
@inputType = @{ args.toMap.get('type).map(_.toString).getOrElse("hidden") }
@htmlArgs = @{ args.filter(arg => !arg._1.name.startsWith("_") && arg._1 != 'id).toMap.filter(_._1 != 'type) }
<input type="@inputType" id="@id" name="@field.name" value="@field.value" @toHtmlArgs(htmlArgs)>
这允许您在所有视图中重用代码,并为data-ref="..."
隐藏字段提供额外的参数。