Grails g:按钮名称来自params,无格式可使用

问题描述

|| 有没有可能在没有表格的情况下在控制器中执行并动作的按钮?另外,我想做这样的事情,但我看到这是不可能的:
<g:form action=\"addFavourite\">
                                                <td>
        <g:submitButton name=\"${it.area.name}\" value=\"Add\" class=\"button small blue\"/><br><br>
        </td>
                       </g:form>
用来自控制器的值来命名按钮是行不通的。还有其他选择吗?它给了我一个错误代码。而且我100%确定值不为null。     

解决方法

        这要看情况。如果您希望按钮通过标准POST提交到服务器,则不会。 HTML甚至没有没有表单的按钮。您可以使用看起来像按钮的图像链接来伪造此图像,但实际上它只是通过标准锚标记提交的。这将执行GET,而不是POST。 但是,如果要使用Ajax,则可以跳过Grails标记(就像我经常做的那样)并使用HTML BUTTON元素。如果需要,甚至可以使用remoteFunction进行ajax调用。 更新:!! 2个相同的答案。 :)     ,        您可以在表单外部创建一个按钮,使用remoteFunction标记在单击该按钮时执行控制器操作
<button type=\"button\" name=\"myButton\"
    onclick=\"${remoteFunction(action:\'bookByName\',controller: \'book\'
    params:\'\\\'bookName=\\\' + this.value\')}\">Click Here</button>
    ,        “ it”在这里代表什么?我认为是罪魁祸首。
<g:submitButton name=\"${it.area.name}\" value=\"Add\" class=\"button small blue\"/>