MVC中使用Knockout,json获取数据成功后,遍历填充视图模型时,代码不执行怎么回事

MVC中使用Knockout,json获取数据成功后,遍历填充视图模型时,代码不执行怎么回事

问题描述:

function AppViewModel() {
var self = this;
self.brandstandards = ko.observableArray();
self.cart = ko.observableArray();
self.orders = ko.observableArray();
function BrandStandardViewModel(firstself, brandstandard) {
var self = this;
self.Id = brandstandard.Id;
self.Name = brandstandard.Name;
self.Price = brandstandard.Price;
self.BrandName = brandstandard.ProductBrand.Name;
self.Number = ko.observable(0);
alert("222")
//将产品添加到购物车方法
self.addItemToCart = function () {
var num = self.Number();
if (num == 0) {//如果没有该产品,添加整个
firstself.cart.push(self);
}//若有,只修改数量加1
self.Number(num + 1);
};
});
//移除所有数量的产品
self.removeAllFormCart = function () {
self.Number(0);
firstself.cart.remove(self);
}
}
。。。其他功能及视图模型

    alert(@ViewBag.BrandId)
    var brandid = "@ViewBag.BrandId";
    $.getJSON("/api/brandstandardapi/"+brandid, function (brandstandards) {
        $.each(brandstandards, function (index, brandstandard) {
                    从这下面这句不执行了
            self.brandstandards.push(new BrandStandardViewModel(firstself, brandstandard));
            alert("111")
        });
    });
}

解决了,原来是获取的数据有问题,数据格式不对

下断点调试,返回的json是什么。

图片说明
这是获取的数据