我的表格有两个按钮......两者都是为了完全不同的目的..因此有必要采取单独行动......是否可能?如果不是什么是解决这个问题的最佳解决方案...... 谢谢你提前
答案 0 :(得分:9)
<g:actionSubmit>
tag允许您在一个表单中拥有多个提交按钮。
<g:form controller="test">
<g:actionSubmit value="Submit to success" action="success"/>
<g:actionSubmit value="Submit to delete" action="delete"/>
</g:form>
答案 1 :(得分:2)
您可以使用<g:actionSubmit/>
按钮将单个grails表单转换为不同的操作。
<g:form method="post">
...
<g:actionSubmit action="oneAction" value="One Action"/>
<g:actionSubmit action="anotherAction" value="Another Action"/>
</g:form>
单击“一个动作”将由当前控制器的oneAction
动作处理;单击“另一个操作”将由当前控制器的anotherAction
操作处理。
答案 2 :(得分:1)
单个表单只能有一个操作。
您可以使用JavaScript动态更改该操作,但这会增加对JS的依赖。
最好是将表单提交到单个URL,然后按照(伪代码)的方式执行操作:
if (submit is foo) {
process_form_with_foo_class()
} elseif (submit is bar) {
process_form_with_bar_class()
} else {
// Form was submitted without using a submit button
// e.g. with enter, or JS.
process_form_with_foo_class() // Let's use foo as the default
}