Grails g:来自params的按钮名称,没有使用的形式

时间:2011-05-30 15:14:49

标签: grails controller

是否有可能在没有表格的控制器中执行和操作按钮?此外,我想做这样的事情,但我发现这是不可能的:

<g:form action="addFavourite">
                                                <td>
        <g:submitButton name="${it.area.name}" value="Add" class="button small blue"/><br><br>
        </td>
                       </g:form>

使用来自控制器的值命名按钮不起作用。任何可能的替代方案?它给了我一个null-error-code。而且我100%确定该值不为空。

3 个答案:

答案 0 :(得分:1)

您可以在表单外创建一个按钮,该按钮在使用remoteFunction标记

单击时执行控制器操作
<button type="button" name="myButton"
    onclick="${remoteFunction(action:'bookByName', controller: 'book'
    params:'\'bookName=\' + this.value')}">Click Here</button>

答案 1 :(得分:0)

有点依赖。如果您想要一个按钮通过标准POST提交到服务器,那么没有。 HTML甚至没有一个没有表单的按钮。您可以使用看起来像按钮的图像链接来伪装它,但实际上它只是通过标准锚标记提交。这将执行GET,而不是POST。

但是,如果你想使用ajax,你可以跳过Grails标签(我经常这样做)并使用HTML BUTTON元素。如果你愿意,甚至可以使用remoteFunction进行ajax调用。

更新:Doh! 2个相同的答案。 :)

答案 2 :(得分:0)

“它”代表什么?我认为那是罪魁祸首..

<g:submitButton name="${it.area.name}" value="Add" class="button small blue"/>