我是grails的新手而不是安静地理解为什么我的表单一直在调用我的控制器的索引方法,即使我指定了调用测试方法的操作。
这是gsp:
<g:form action="test">
<g:submitToRemote update="updateMe" value="Click Me!" />
</g:form>
<div id="updateMe"></div>
以下是渲染方式:
<form action="/CEFConnect/CEFTicker/test" method="post">
<input onclick="jQuery.ajax({type:'POST',data:jQuery(this).parents('form:first').serialize(),
url:'/CEFConnect/CEFTicker/index',
success:function(data,textStatus){jQuery('#updateMe').html(data);},
error:function(XMLHttpRequest,textStatus,errorThrown){}});
return false"
type="button" value="Click Me!">
</form><div id="updateMe"></div>
ajax正在调用'/CEFConnect/CEFTicker/index'
而不是'/CEFConnect/CEFTicker/test'
这是控制器:
class CEFTickerController {
def index() {
render "<p>index called.</p>"
}
def list() {
}
def test() {
render "<p>test called.</p>"
}}
我正在调用的页面是'/ CEFConnect / CEFTicker / list'。所以,我不会从当前行动中调出行动。
答案 0 :(得分:4)
在url
submitToRemote
<g:submitToRemote url="[action: 'test']" update="updateMe" value="Click Me!"/>