JQuery AJAX сложность обратного вызова - PullRequest
1 голос
/ 04 октября 2011

У меня есть следующий код:

$.ajax({
                // type: "POST",
                url: webMethod,
                data: $.toJSON(params),
                // dataType: "json",
                // contentType: "application/json",
                success: function (obj) {

                    if (obj == 1) {
                        window.location = 'Postpaid/Dashboard';
                        // $.mobile.changePage('#dashboard', 'slide', false, true);
                    }
                    else if (obj == 0) {
                        window.location = 'Prepaid/Dashboard';
                    }
                    else if (obj == -1) {
                        window.location = 'Home/Index/#login1';
                    }
                    else {
                        $.mobile.changePage('#login2', 'slide', false, true);

                        $('#txtMSISDN2').val(obj.Pin.MSISDN);
                        $('#txtPin').val(obj.Pin.PIN);
                        $('#txtMSISDN2').attr('readonly', 'readonly');
                    }
                },
                error: function () {
                    alert('error returned.');
                }
            });

Из метода я возвращаю целочисленный флаг. Я хочу перенаправить пользователя на соответствующую веб-страницу в соответствии с возвращаемым int. Однако этот код не работает. Есть предложения?

Я неправильно использую здесь window.location? Большое спасибо!

Заранее спасибо!

1 Ответ

1 голос
/ 28 ноября 2011

Мой отзыв ...

  1. данные могут быть непосредственно вашими параметрами, не нужно использовать $ .toJSON

  2. добавить console.debug (obj), чтобы увидеть, что на самом деле возвращает JQM (а не только Fiddler)

  3. замените это window.location на $ .mobile.changePage, поэтому оно есть (и позаботится и о других вещах для вас)

Как только вы сообщите нам, что вернуло №2, мы сможем найти лучшее решение вашей проблемы.

...