我想将一个对象从我的控制器渲染到一个jQuery回调函数。 这就是我尝试这样做的方式:
调用jQuery Ajax函数
function addVideo() {
var url = "/myApp/project/addVideo"
var data = 'videoURL=' + $('#videoUrlInputText').val()
$.getJSON( url,
{
videoURL: $('#videoUrlInputText').val()
},
updateVideoLoad(data)
)
}
我的Grails'Project'控制器
def addVideo() {
def videoMap = [urlAccepted: "bim", provider: "bam"]
render videoMap as JSON
}
我的jQuery回调函数(updateVideoLoad())
function updateVideoLoad(videoMap) {
$('h4').html( 'Provider: ' + videoMap.provider )
}
我最终在浏览器中获得undefined
输出。浏览器控制台中没有任何内容。
测试控制器输出并正确呈现JSON对象。
知道回调函数无法正确读取对象的原因吗? 任何建议都是最受欢迎的。
提前致谢。
答案 0 :(得分:2)
我不知道细节,但我怀疑你的成功回调是有问题的,因为它不仅仅是一个函数名或匿名函数。
如果你试试这个怎么办?
$.getJSON( url,
{
videoURL: $('#videoUrlInputText').val()
},
function (response, status, jqxhr) {
updateVideoLoad(data)
}
)