1、这种方式多个ajax嵌套。可读性不是很好

$.ajax({
        url: "/home/GetProduct",
        dataType: "JSON",
        type: "GET",
        success: function (data) {
            $.ajax({
                url: "",
                dataType: "JSON",
                type: "GET",
                success: function (data) {
                    $.ajax({
                        url: "/home/GetProduct",
                        dataType: "JSON",
                        type: "GET",
                        success: function (data) {
        
                        }
                }
        }

2、这种顺行的方式比较好些:

$.when($.ajax({
        url: "",
        dataType: "JSON",
        type: "GET",
        success: function (data) {
            alert(JSON.stringify(data));
        }
    })).done(function (data) {
        alert(data[0].Name);
    }).done(function (data) {
        alert(data[1].Name);
    }).fail(function () {
        alert("程序出现错误!");
    }).then(function (data) {
        alert("程序执行完成");
    });

3、

$.when($.ajax({
        url: "/home/GetProduct",
        dataType: "JSON",
        type: "GET",
        success: function (data) {
            MyModel.PeopleList = ko.observableArray(data);//先为对象赋值
        }
    })).done(function (data) {
        ko.applyBindings(MyModel);//再绑定对象
    });

更多推荐

多个ajax嵌套解决较好方法