如何用jquery监听返回的json对象

geo*_*rtz 3 jquery json

我有一个页面,其表单有一个文件上传输入项目,目标是隐藏的iframe.当表单发布到iframe时,服务器处理该文件并返回一个json对象.我不知道如何使用jquery或普通的旧javascript来监听返回的对象.我为我的iframe设置了一些代码,例如......

$("#upload_target").load(function () {
   //what to do here - how do I get the json object?
});
Run Code Online (Sandbox Code Playgroud)

有谁知道如何连接jquery来监听发送回iframe的json对象?谢谢.

geo*_*rtz 5

我终于想出了怎么做......

$("#upload_target").load(function (data) {
    if (data != null){
        var obj = jQuery.parseJSON(data);
        //...work with obj here.
    }
});
Run Code Online (Sandbox Code Playgroud)

无论是否正确,它都有效.

编辑 - 实际上我有点领先于自己.这是正确的代码....

$("#upload_target").load(function (){
        var retval = $(frames['upload_target'].document).text();
        if (retval != null)
        {
            try{
                var obj = jQuery.parseJSON(retval);
                //...work with obj here.
            }catch(err){}
        }
});
Run Code Online (Sandbox Code Playgroud)

我必须改变的一件事是确保我的MVC控制器操作设置JSONResult.ContentType ="text/plain".否则我得到一个保存为下载对话框.