Вот мой код, который отправляет форму через AJAX, а затем предназначается, чтобы отобразить сообщение обратно пользователюПроблема с получением строки JSON
var postValues = {
name: $($nameObject).val(),
email: $($emailObject).val(),
message: $($messageObject).val(),
form: $(this).find('input[name=form]').val()
};
var form = this;
$.post(config.basePath + 'contact/', postValues, function(data) {
// get json here and make sure it sent
console.log('done request!');
console.log(data.success);
var $statusObject = $(form).find('.status-message');
if (data.success) {
console.log(data.message);
$statusObject.removeClass('failed').text(data.message);
setTimeout(function() {
$statusObject.fadeOut(1500).remove();
$(form).find('input[type=text], textarea').val('');
$(form).find('button[type=submit]').removeAttr('disabled').parent('div').removeClass('sending');
}, 1500);
} else { // error with ajax
$statusObject.addClass('failed').text(data.message);
$(form).find('button[type=submit]').removeAttr('disabled');
}
}, 'json');
return false;
});
Firebug говорит, что JSON возвращается в
{ "успех": правда, "messsage": "Отправленные успешно"}
Я могу легко получить значение data.success
, но всякий раз, когда Я пытаюсь получить доступ к data.message
, для него установлено значение «undefined».
Однако, когда я
console.log(data)
я получаю правильный выход в Firebug:
успех Object = истинный messsage = Sent успешно
Что звучит как причина этого? Это сводит меня с ума!
Заранее благодарим за любую помощь.
Я даю вам принятый ответ, потому что у вас есть наименьшая репутация :) – alex
Aw .. so sweet: p – womp