如何从Play框架中的HTML文本区域获取值?

时间:2016-12-26 16:17:58

标签: html playframework scala-template

我在Play Framework中使用scala模板来创建我的视图。

用户需要在文本区域中输入一些文本。我想使用此文本发送到我的应用程序中的另一个视图。

<div class="ui form">
 <div class="field">
   <label>Please use the text box below</label>
     <textarea>//this is the text that i need to grab</textarea>
 </div>
    @pet_order(petId, //this is where i send in the text)
</div>

有人可以就如何实现这个目的给我一些建议吗?

1 个答案:

答案 0 :(得分:1)

文本区域必须包装在表单中并具有name属性。

Html看起来像这样:

  <form action="/some_path" method="post">
    <textarea name="attribute_name"></textarea>
    <input type="submit" value="Отправить">
  </form>

您可以使用Play Framework的帮助程序在视图中创建表单。类似的东西:

@helper.form(action = routes.YourController.your_action) {
   @helper.textarea(myForm("attribute_name")) 
}

了解更多here

提交表单时,文本区域中的文本将被发送到服务器某个Controller#action。操作的网址在表单action属性中指定。保存输入文本的参数名称在textarea的name属性中指定。

然后,在action中,您必须通过它的名称从请求属性中提取文本并将其发送到另一个视图,无论是渲染视图还是将文本作为参数传递或重定向到另一个{ {1}}将文本作为新请求的参数传递。

您可以使用Play Framework的Form来提取请求参数。请参阅上一个链接。