Да, это еще один из тех, кто "обращается к json с javascript". Побалуйте меня, я прочитал остальную часть ответов, событие это, и не помогло.
У меня есть следующий код
var display_order_message = function(res, status) {
alert(res.status+' '+res.message+' '+res["message"]);
};
$("#ticketform").submit( function(event) {
data = {};
var args = {
type:"POST",
url:"someurldoesntmatterhere",
data:data,
dataType:"json",
success: somefunctionsheredontmattereither,
complete: display_order_message
};
$.ajax(args);
event.preventDefault();
});
Теперь, используя Firebug, я вижу, что возвращаемый json
{"status": 200, "qa": [], "message": "order canceled", "qb": []}
Предупреждение в вышеприведенном коде
200 undefined undefined
Итак, почему я могу получить доступ.status, но не.message или ["message"]? И как мне получить доступ к сообщению?
Положите display_order_message
в success
arg вместо complete
.
В настоящее время ваша переменная res
является jqXHR
которая также имеет дочерний status
.
очень просто
var obj = {"status": 200, "qa": [], "message": "order canceled", "qb": []}
var message = obj.message;
var message2 = obj['message'];
обе работы
res.status
в вашем случае). Обратный вызов ошибки должен использоваться для обработки ошибки уровня jQuery (или ниже).