Scala 在lift中将textareas客户端动态添加到表单

Scala 在lift中将textareas客户端动态添加到表单,scala,lift,Scala,Lift,我得到了一个基于中示例的表单,我想知道是否有一种方法,在页面上有一个按钮,每次单击该按钮时都会添加一个文本区域,然后在提升代码中以字符串数组的形式获得它 我所描绘的是这样的: <form class="lift:OnSubmit?form=post"> Name: <input name="name"><br> Age: <input name="age" value="0"><br> <span id="somecomm

我得到了一个基于中示例的表单,我想知道是否有一种方法,在页面上有一个按钮,每次单击该按钮时都会添加一个文本区域,然后在提升代码中以字符串数组的形式获得它

我所描绘的是这样的:

<form class="lift:OnSubmit?form=post">
  Name: <input name="name"><br>
  Age: <input name="age" value="0"><br>
<span id="somecomments"></span>
<input type="button" onclick="$('#somecomments').append($('<textarea cols=80 rows=10 name=comments>'))" value="Add Comment"/>
  <input type="submit" value="Submit">
</form>

//in scala:
object OnSubmit {
  def render = {
    var name = ""
    var age = 0
    var comments = List("")​
    def process() {
        S.notice("Name: "+name)
        S.notice("Age: "+age)
        S.notice(comments)
        S.redirectTo("/")
      }
    }​
    "name=name" #> SHtml.onSubmit(name = _) &
    "name=age" #> SHtml.onSubmit(s => asInt(s).foreach(age = _)) &
    "name=comments" #> SHtml.onSubmit(comments = _) &
    "type=submit" #> SHtml.onSubmitUnit(process)
  }
}

名称:
年龄:
//在scala中: 提交对象{ def呈现={ var name=“” 变量年龄=0 var注释=列表(“”)​ def进程(){ 美国公告(“名称:”+名称) 美国公告(“年龄:+年龄) 美国公告(评论) 美国重定向至(“/”) } }​ “name=name”#>SHtml.onSubmit(name=#)& “name=age”#>SHtml.onSubmit(s=>asInt.foreach(age=#))& “name=comments”#>SHtml.onSubmit(comments=#)& “type=submit”#>SHtml.onSubmitUnit(进程) } }
但是我得到了一个编译错误,即comments字段是一个字符串,因此我不能将它分配给一个带有“name=comments”#>SHtml.onSubmit(comments=#)的列表

使此代码工作的最佳方法是什么?

有关预结束:

"name=comments" #> SHtml.onSubmit(comments ::= _)
用于附加:

"name=comments" #> SHtml.onSubmit(comments :+= _)
预编:

"name=comments" #> SHtml.onSubmit(comments ::= _)
用于附加:

"name=comments" #> SHtml.onSubmit(comments :+= _)

这里我描述了如何添加任意数量的字段(我有一个textarea和一个“相关”的数字字段)

使用jQuery添加它们,然后Lift将所有数据作为json对象获取


这里我介绍如何添加任意数量的字段(我有一个文本区域和一个“相关”数字字段)

使用jQuery添加它们,然后Lift将所有数据作为json对象获取


如果我将HTML更改为具有多个名为“comments”的文本区域,则该功能有效,但对于javascript动态添加的字段无效。我希望能够多次点击按钮并添加所有新文本区域,如果我将HTML更改为具有多个名为“comments”的文本区域,则该功能有效,但它不适用于javascript动态添加的字段。我希望能够多次点击按钮并添加所有新的文本区域。你知道怎么做吗?我正在寻找“正确的方法”做同样的事情,我正在努力想出一种非黑客式的方法来做。你有没有想过怎么做?我在寻找“正确的方法”做同样的事情,我正在努力想出一种非黑客式的方法来做。