为什么JQuery AJAX调用返回未定义的对象?

时间:2018-10-27 21:45:44

标签: jquery json ajax

我已经对php服务器脚本进行了jquery ajax调用,但是遇到一条错误消息,告诉我未定义返回的JSON类型的数据。 。 。 那么,如何解决这个问题呢?这是jquery ajax调用:

    $.ajax({
                url: 'listWorkProcess.php',
                method: 'post',
                data: data,
                success: function(feedback){
                    $.parseJSON('feedback');
                    console.log(feedback);// loged correctly
                    alert(feedback.message);//here is the undefined message
                    $('#table').html(feedback.row_html);//this not executed Why?
                }   
            });//end of ajax

2 个答案:

答案 0 :(得分:1)

您仅将一个字符串传递给parseJSON。 您需要将其分配给某些东西并使用您得到的数据:

            success: function(feedback){
                var data = $.parseJSON(feedback);
                console.log(data);// loged correctly
                alert(data.message);//here is the undefined message
                $('#table').html(data.row_html);//this not executed Why?
            } 

答案 1 :(得分:1)

try this AJAX code

In your code small change needed this change is include " dataType = 'json' " in AJAX code like below

$.ajax({
    url: 'listWorkProcess.php',
    dataType:"json",
    method: 'post',
    data: data,
    success: function(feedback){
        console.log(feedback);// loged correctly
        alert(feedback.message);//here is the undefined message
        $('#table').html(feedback.row_html);//this not executed Why?
    }   
});

这是获得响应的简单方法,它以jsonencode formate的形式在控制器中设置,只需将dataType:'json'赋予AJAX代码即可。