1

我想要实现的是一个使用 Play form-helpers 的简单表单,其中包含一个 textarea 输入字段。然而,这个文本区域应该包含一个预定义的值。

使用纯 html 可以这样做:

<textarea>Predefined text</textarea>

我想要做的与使用 Play 中的 @textarea-helper 相同。但是,文本区域中的内容没有符号(或者我根本无法找到它)。

@textarea(myForm("text"), 'rows -> 30, '_label -> "MyLabel")

没有值的符号,例如'value 或'_value。

在这里我找到了与textarea相关的代码:

@**
 * Generate an HTML textarea.
 *
 * Example:
 * {{{
 * @textarea(field = myForm("address"), args = 'rows -> 3, 'cols -> 50)
 * }}}
 *
 * @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)

@input(field, args:_*) { (id, name, value, htmlArgs) =>
    <textarea id="@id" name="@name" @toHtmlArgs(htmlArgs)>@value</textarea>
}

有这个@value代表文本区域的内容。它来自哪里,我该如何设置?

4

1 回答 1

3

来自 Play 的表单文档

使用初始默认值填充表单 有时您需要使用现有值填充表单,通常用于编辑数据:

val filledForm = userForm.fill(User("Bob", 18))

我还没有尝试过,但我认为这也适用于文本区域。

于 2013-06-29T17:57:00.663 回答