Grails / jQuery - 将Controller中的JSON对象渲染为jQuery函数

时间:2012-04-02 17:32:54

标签: jquery ajax json grails callback

我想将一个对象从我的控制器渲染到一个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对象。

知道回调函数无法正确读取对象的原因吗? 任何建议都是最受欢迎的。

提前致谢。

1 个答案:

答案 0 :(得分:2)

我不知道细节,但我怀疑你的成功回调是有问题的,因为它不仅仅是一个函数名或匿名函数。

如果你试试这个怎么办?

$.getJSON( url,  
        {
            videoURL: $('#videoUrlInputText').val()
        }, 
        function (response, status, jqxhr) {
             updateVideoLoad(data)
        }

)
相关问题