Проблема с получением строки JSON - PullRequest
0 голосов
/ 22 июля 2009

Вот мой код, который отправляет форму через AJAX и затем предназначен для отображения сообщения обратно пользователю

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, оно устанавливается на «неопределенное».

Однако, когда я делаю

console.log(data)

Я получаю правильный вывод в Firebug:

Объект успешно = истинное сообщение = успешно отправлено

Что звучит как причина этого? Это сводит меня с ума!

Заранее спасибо за любую помощь.

Ответы [ 2 ]

1 голос
/ 22 июля 2009

Похоже, ваша возвращаемая строка в Firebug - это я sss age ... обратите внимание на дополнительные s.

Я думаю, что это может быть вашей проблемой;)

1 голос
/ 22 июля 2009

Вы пытаетесь получить доступ к data.message, но ваш JSON имеет data.messsage.С тремя понятиями.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...