如何从jQuery Ajax调用返回的数据中获取对象?

时间:2022-10-08 09:06:53

I have this ajax code:

我有这个ajax代码:

$.ajax({
    type: "POST",
    url: "inc/ajax.php",
    data: $('#form-responder').serialize(),
    success: function (data) {
        console.log(data); // prints: {"sucesso":"true", "mensagem":"Correta: A pulseira de identificação se aplica a todos os pacientes, sem exceção. ", "index_proxima":"2"}
        //var sucesso = eval(data.sucesso);
        var mensagem = data.mensagem;
        alert(mensagem); // shows: undefined
    }
});

I need to get some object values but all of them are returning 'undefined', what is wrong with that? I used to do data.something and always worked before, maybe something with this jQuery version 2.1.3 ?

我需要得到一些对象值但它们都返回'undefined'这有什么问题?我以前做数据。一些以前经常使用的东西,也许是jQuery版本2.1.3 ?

2 个解决方案

#1


2  

You need to use parseJson()

您需要使用parseJson()

JsFiddle

JsFiddle

data = jQuery.parseJSON( data);
alert(data.mensagem);

#2


1  

"mensagem" is string key, you should use it with array key format like so: data['mensagem'].

“mensagem”是字符串键,你应该用数组的关键格式来使用它:data['mensagem']。

var data = {"sucesso":"true", "mensagem":"Correta: A pulseira de identificação se aplica a todos os pacientes, sem exceção. ", "index_proxima":"2"};

$('input').val(data['mensagem']);
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.0/jquery.min.js"></script>
<input />

#1


2  

You need to use parseJson()

您需要使用parseJson()

JsFiddle

JsFiddle

data = jQuery.parseJSON( data);
alert(data.mensagem);

#2


1  

"mensagem" is string key, you should use it with array key format like so: data['mensagem'].

“mensagem”是字符串键,你应该用数组的关键格式来使用它:data['mensagem']。

var data = {"sucesso":"true", "mensagem":"Correta: A pulseira de identificação se aplica a todos os pacientes, sem exceção. ", "index_proxima":"2"};

$('input').val(data['mensagem']);
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.0/jquery.min.js"></script>
<input />