Javascript ajax({type:&;39;POST&;39;在grails中)
首先感谢大家提出的宝贵建议。我遇到了一个问题,那就是grails控制器远程函数调用中的jQuery ajax调用。Javascript ajax({type:&;39;POST&;39;在grails中),javascript,jquery,ajax,grails,Javascript,Jquery,Ajax,Grails,首先感谢大家提出的宝贵建议。我遇到了一个问题,那就是grails控制器远程函数调用中的jQuery ajax调用。 我的项目中安装的插件有:jQueryUi-1.10.3、jQuery-1.11.0 我的控制器使用此方法: def loadamount(){...} 对于ajax调用方法: def ajaxCallBalance(long id){ def userBalances=loadamount(id) def userBalance=userBalances[0]
我的项目中安装的插件有:jQueryUi-1.10.3、jQuery-1.11.0 我的控制器使用此方法:
def loadamount(){...}
对于ajax调用方法:
def ajaxCallBalance(long id){
def userBalances=loadamount(id)
def userBalance=userBalances[0] //it returns in array
return [usreBalance:userBalance]
}
这些都是我的数据库调用,用于在其a/c中加载用户金额,应在用户配置文件html页面内的页面加载。因此,我使用以下方法:
第677点:
<g:if test="${session.LogedUser}">
<script>
${remoteFunction(
controller:'user',
action:'ajaxCallBalance',
update:[success:'uresult',failure:'uresult'],
id:session.LogedUser.id
)}
</script>
${remoteFunction(
控制器:'用户',
操作:'ajaxCallBalance',
更新:[成功:'uresult',失败:'uresult'],
id:session.LogedUser.id
)}
在HTML中:
<li id="uresult"><!-- Want to see hare what result either value or error it returns --></li>
在firebug控制台中,我看到以下错误:
语法错误:语法错误
jQuery.ajax({
类型:';岗位';,
url:';/…/…../ajaxCallBalance/10000000';,
成功:函数(data,textStatus){jQuery(';#uresult';).html(data);},
错误:函数(XMLHttpRequest、textStatus、errorshown)
jQuery(';#uresult';).html(XMLHttpRequest.responseText);
}
});
[注意:这是由grails ajax插件生成的,我写的是参见第677点。]
我的问题是:
$#39;
即使我没有空格,也没有任何符号出现。这是一个bug还是我的错误onLoad/(document).ready()
调用这样的条件。如果有,我会怎么做您不能直接在js中使用grails构造的
${remoteFunction…}
$.ajax({
type: 'POST',
url: "${createLink(action:'ajaxCallBalance', controller:'user')}",
data: { id: id },
success: function (dataCheck) {
//Do stuff
}
........
});
或者像这样使用g:remoteFunction
$('mydiv').onclick = <g:remoteFunction action="ajaxCallBalance" controller="user" id="${id}" />
$('mydiv')。onclick=
请复制您得到的完整错误,这一行还需要更多内容……也发布您的jQuery ajax函数。谢谢emilan,它可以工作。还有一点我想提到的是,提到的ajax必须使用,对于dataCheck值,我们必须从控制器方法提供,该方法也应该呈现而不是返回。
$('mydiv').onclick = <g:remoteFunction action="ajaxCallBalance" controller="user" id="${id}" />