0

我需要用 play framework 2.1 做这样的事情:

@form(routes.PedidoCtrl.carregaTabela){
   //...
   <input type="submit" value="Page 1">
   <input type="submit" formaction="????" value="Page 2">
   <input type="submit" formaction="????" formmethod="post" value="Page 3">
}

但是我应该在“formaction”字段中输入什么?我从未使用过“formaction”属性,但我看到这就是我想要在此页面中执行的操作:http: //cbsa.com.br/post/formulario-com-multiplos-submit-e-method-em -html5.aspx(葡萄牙语)

感谢您的关注。

4

1 回答 1

1

我也从未见过,但它似乎非常有用。

您将使用已在@form帮助程序上使用的相同反向路由。我修改了您的示例代码。显然,只需将“action2”和“action3”替换为您的其他操作方法即可。

@form(routes.PedidoCtrl.carregaTabela){
  //...
  <input type="submit" value="Page 1">
  <input type="submit" formaction="@routes.PedidoCtrl.action2" value="Page 2">
  <input type="submit" formaction="@routes.PedidoCtrl.action3" formmethod="@routes.PedidoCtrl.action3.method" value="Page 3">
}

注意@“routes.PedidoCtrl...”前面的转义字符

反向路由返回一个play.api.mvc.Call实例。该类有一个url()方法,该方法是为您的formaction属性获取输出的方法(它正在调用toString,而后者又调用url)。还有method()可以用于formmethod属性的方法。

于 2013-04-03T21:49:19.290 回答