Grails和Ajax无法成功地通过控制器传递数据
我使用ajax。 在ajax中,我在控制器中调用一个动作,该动作将渲染回:Grails和Ajax无法成功地通过控制器传递数据,ajax,grails,controller,Ajax,Grails,Controller,我使用ajax。 在ajax中,我在控制器中调用一个动作,该动作将渲染回: render template : 'eventInvited', model : [eventInvitees :userData.get('users'),eventUsersCount:userData.get('userCounts'), event :event, tab : userData.get('tab'), isFilter : false,user:user,flag: params.flag]
render template : 'eventInvited', model : [eventInvitees :userData.get('users'),eventUsersCount:userData.get('userCounts'),
event :event, tab : userData.get('tab'), isFilter : false,user:user,flag: params.flag]
我必须使用eventinvites来更新一些span,因此在successajax中,我使用:
$('.inviteeSize').html(data.eventInvitees);
它不会更新这个span我想你想要的是
$('.inviteeSize').html(${eventInvitees});
或
还请注意,根据EventInvestees的数据类型以及您在HTML中所需的内容,最好执行以下操作:
$('.inviteeSize').html("${eventInvitees}");
成功中的数据参数将是HTML。无法以这种方式访问用于在控制器中渲染模板的模型
您最好执行两个ajax调用,一个用于呈现模板,另一个用于获取带有事件受邀者的JSON对象以及所需的任何其他数据
$.ajax({
url: "...",
dataType: "html"
}).done(function(html){
$('.inviteeSize').html(html);
});
$.ajax({
url: "...",
dataType: "json"
}).done(function(json){
console.log(json);
});
其他一些方法是
将事件受邀者数据存储在模板中。然后可以使用$.data方法访问它。注意:您可以在数据属性中存储JSON
首先与被邀请者一起获取JSON,然后使用一些数据作为参数请求呈现的模板,这样就不会进行两次相同的userData.get调用
获取JSON数据,然后使用Javascript模板引擎从中呈现HTML。而不是使用grailsgsp模板
你能不能再给我看一些AJAX调用的代码,看看发生了什么?
$.ajax({
url: "...",
dataType: "html"
}).done(function(html){
$('.inviteeSize').html(html);
});
$.ajax({
url: "...",
dataType: "json"
}).done(function(json){
console.log(json);
});