JQuery и JSON не http ответ на то есть - PullRequest
0 голосов
/ 15 июня 2011

Я пытался решить эту проблему самостоятельно, но после 3 дней поиска и чтения статей я решил обратиться за помощью. Все отлично работает во всех браузерах, кроме ie (7, 8, 9). Firebug не возвращает ошибок также в ie (https://getfirebug.com/firebug-lite-debug.js) Я понятия не имею, что я делаю не так ... пожалуйста, помогите.

                                $.ajax({
                            url: review_form.attr('action'),
                            type: 'POST',
                            data: formData,
                            dataType: 'json',
                            cache: false,
                            contentType: 'application/json',
                            success: function(data) {
                                if(data['status'] == "OK") {
                                    $('#feedback').text('Konto zostało poprawnie dodane.');
                                    setTimeout(function(){window.location.href = data['redirect']},3000);
                                }
                                else {
                                    $.each(data, function(key, value) {
                                        // The edit was unsuccessful, put in the error messages.
                                        var UL = $('#frm_reg input[name=' + key + ']').closest('p')
                                            .prepend('<ul class="errorlist"></ul>')
                                            .find('ul');
                                        $.each(value, function() {
                                            UL.append("<li>" + this + "</li>");
                                        });
                                    });
                                }
                            },
                            error: function(xhr, status, error) {
                                alert(status);
                            }
                        }); 

Я обнаружил ошибку в своей форме, в "действии" была опечатка

    <form method="post" action="{{ registration_register }}" id="frm_reg">

все выглядит нормально, но ...;) после того, как я удалил firebug-lite, он перестал работать, т.е. на 7 и 8 ....

Ответы [ 2 ]

1 голос
/ 16 июня 2011

В Internet Explorer 9 вы также можете использовать панель инструментов разработчика, нажав F12 и перейти на вкладку сети. Нажмите «Начать захват», и вы сможете увидеть, какое сообщение выходит и возвращается. или, если это не работает, возможно, fiddler может помочь определить, действительно ли вы отправляете вызов ajax?

Вы также проверяли правильность свойства url?

1 голос
/ 15 июня 2011

это скорее всего, т.е. кеширование ваших результатов.

попробуйте добавить:

$.ajaxSetup({
    // Disable caching of AJAX responses */
    cache: false
});

к вашему документу готов.

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