Ajax DataType: JSON responder é: OK, mas sem saída?
Ok, então aqui está o meu problema. Eu tenho uma solicitação simples do jQuery Ajax e não consigo trabalhar quando defino o DataType como "JSON".
var form_data = { "id": msg, "token": token };
$.ajax({
type: 'POST',
url: "ajax.php",
data: form_data,
dataType: 'json',
beforeSend:function(){
// this is where we append a loading image
},
success: function(data) {
var thing = JSON.parse(data);
$('.body-item').html(thing.b);
},
error: function() {
alert('error');
}
});
Este é o meu arquivo ajax, na verdade. oajax.php
se parece com isso:
$arr = array('a' => 1, 'b' => 2, 'c' => 3, 'd' => 4, 'e' => 5);
$foo = json_encode($arr);
echo $foo;
Quando executo o script jQuery, recebi uma resposta 200: OK com o Firebug e, quando dou uma olhada na resposta, obtive o seguinte:{"a":1,"b":2,"c":3,"d":4,"e":5}
No entanto, eu não recebo nada mostrado na div .body-item, nem se eu tentar com alert ().
Além disso, se eu executar o mesmo código SEM:dataType: 'json'
parte, eu recebo tudo produzido corretamente.
Qual poderia ser o problema aqui?