我正在尝试在 grails 中使用标签 g:formRemote。
在头部定义中:
<g:javascript library="prototype" />
看法:
<g:formRemote name="something" update="remoteDocsBlock"
url="[ controller: 'document',
action: 'search']">
search: <input name="searchstring" type="text"></input>
<g:actionSubmit value="Search" action="search" />
<g:render template="/document/remoteSearchList" model="[docs:docs]" />
</g:formRemote>
<div id="remoteDocsBlock">this div is updated with the result...</div>
在我的控制器中
def search = {
.....
render (template:'remoteSearchList', model: [docs:docs])
}
问题
发生了什么:调用控制器,整个页面被控制器的结果替换 - 模板_remoteSearchList。页面上的不同 ajax 调用确实有效。我不知道为什么 grails 会这样。
更新
我已经删除了“__”问题。评论解决了这个问题。
更新
我已经隔离了问题:JQuery。我也在网站上使用 JQuery。如果将其删除,则 ajax 调用将起作用……需要找到一种方法来使两者都起作用。
<g:javascript library="jquery-1.4.4.min" />
<g:javascript library="jquery-ui-1.8.7.custom.min" />
<g:javascript library="jquery-server-extentions" />