Ajax&Grails - 如何在成功的Ajax中使用来自模型的参数?
Ajax & Grails - how to use the params from the model in the success of the Ajax?
我有一个 Ajax 调用控制器中的操作。
控制器渲染:
render template:"changePassword", model:[user: user, passwordError: passwordError]
passwordError
是布尔值。
如果 passwordError
为真,我必须在 js.file 中执行功能。
如何检查成功的 Ajax passwordError
的值?
Ajax代码:
$.ajax({
url: changePassword,
type: "post",
data: {
password: $('#password').val(), npassword: $('#npassword').val()
},
success: function(data,textStatus){
$('#changePassSuceess').modal()
}
});
如果您不需要显示您正在 return 的模板,那么您可以将控制器中的 return 更改为如下内容
return [passwordChanged:true] as JSON
然后在您的 ajax 调用中,您将有权访问数据属性中的 JSON 对象。
console.log(data.passwordChanged);
也许您还必须在 ajax 调用中告知 return 类型是 json。
如果您不需要呈现模板,您可以像@Eylen 提到的那样return a json,然后从json 访问标志。如果你必须呈现一个模板,那么你可以在你的模板中有一个隐藏字段,其值设置为标志 passwordError 然后你可以从你的javascript代码
中的这个隐藏字段中获取标志的值
查看此问题 how to find hidden element in jquery ajax response html
我有一个 Ajax 调用控制器中的操作。
控制器渲染:
render template:"changePassword", model:[user: user, passwordError: passwordError]
passwordError
是布尔值。
如果 passwordError
为真,我必须在 js.file 中执行功能。
如何检查成功的 Ajax passwordError
的值?
Ajax代码:
$.ajax({
url: changePassword,
type: "post",
data: {
password: $('#password').val(), npassword: $('#npassword').val()
},
success: function(data,textStatus){
$('#changePassSuceess').modal()
}
});
如果您不需要显示您正在 return 的模板,那么您可以将控制器中的 return 更改为如下内容
return [passwordChanged:true] as JSON
然后在您的 ajax 调用中,您将有权访问数据属性中的 JSON 对象。
console.log(data.passwordChanged);
也许您还必须在 ajax 调用中告知 return 类型是 json。
如果您不需要呈现模板,您可以像@Eylen 提到的那样return a json,然后从json 访问标志。如果你必须呈现一个模板,那么你可以在你的模板中有一个隐藏字段,其值设置为标志 passwordError 然后你可以从你的javascript代码
中的这个隐藏字段中获取标志的值查看此问题 how to find hidden element in jquery ajax response html