jquery ajax回调难度

时间:2011-10-04 11:28:14

标签: asp.net-mvc jquery jquery-mobile

我有以下代码:

$.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.');
                }
            });

从方法中我返回一个标志整数。我想根据return int将用户重定向到适当的网页。但是,此代码不起作用。有什么建议吗?

我在这里错误地使用window.location吗?非常感谢你!

提前致谢!

1 个答案:

答案 0 :(得分:1)

我的反馈......

  1. 数据可以直接用你的参数,不需要使用$ .toJSON

  2. 添加一个console.debug(obj)来查看JQM真正返回的内容(而不仅仅是Fiddler)

  3. 用$ .mobile.changePage替换那些window.location,这就是它存在的原因(并会为你处理其他内容)

  4. 一旦你告诉我们#2的回报,我们就能为你的问题提供更好的解决方案。