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
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
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 />