繁体   English   中英

调用后处理来自ajax请求的数据

[英]Handle data from ajax request after call

我正在使用ajax从php函数获取返回的值,该调用是正确的,但是我无法正确访问数据。

Ajax调用是:

$.ajax({
            data:  {"hotel_id" : hotel_id},
            url:   '/get_type_check',
            type:  'get',     
            success:  function (response) {

                    console.log(response);
            },

             error: function(XMLHttpRequest, textStatus, errorThrown) { 
    alert("Status: " + textStatus); alert("Error: " + errorThrown); 
}    
    });

如果我打印控制台日志,则显示:

<!DOCTYPE html>

注释:要更改此许可证标题,请在“项目属性”中选择“许可证标题”。 要更改此模板文件,请选择“工具” |“工具”。 模板,然后在编辑器中打开模板。

{"status":["CAB2"]}

和php函数:

 public function get_type_check(){


    $type_checks=Hotel::get_type_checks($_GET['hotel_id']);

    echo json_encode(array('status' => $type_checks));

}

如何获得response.status?

我应该使用return而不是“ echo”吗?

您必须解析对json的响应才能将其捕获为json。

只需添加以下行:

var data = $.parseJSON(response);

因此,您的ajax将如下所示:

$.ajax({
                data: {"hotel_id": hotel_id},
                url: 'ajax.php',
                type: 'get',
                success: function(response) {

                    var data = $.parseJSON(response);

                    console.log(data.status);
                },
                error: function(XMLHttpRequest, textStatus, errorThrown) {
                    alert("Status: " + textStatus);
                    alert("Error: " + errorThrown);
                }
            });

        });

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM