我正在使用带有grails remoteFunction标记的jquery库,以便在鼠标悬停时进行AJAX调用。从我写的println我知道正在调用指定的动作,但是onSuccess函数永远不会被触发。我检查了firebug,我收到了404错误。我是AJAX和JS的新手,所以我可能会忽略一些非常明显的东西。这是我的代码段。
GSP:
<script type="text/javascript">
function change()
{
document.getElementById('changer').src='${resource(dir: "images/images", file: "heart_red.png")}';
}
function onSuccess(data){
alert("Has hearted:");
}
<img class="user_profile_pic" src="${user.profilePicture}" onmouseover="${remoteFunction(controller:'user', action: 'hasHearted', onSuccess: 'onSuccess(data)', params:[userID: user.id])}"/>
常规:
def hasHearted = {
println "Recieved user ID: $params.userID"
if(some condition...){
[hasHearted: true] as JSON
}
else{
[hasHearted: false] as JSON
}
}
答案 0 :(得分:1)
尝试在控制器中使用 render 方法:
render ([hasHearted: true] as JSON)