小编Spa*_*kle的帖子

47
推荐指数
2
解决办法
3万
查看次数

从JSON更新Knockout.js Observable

我试图建立一个网格并通过JSON用更多记录更新它.在这个简单的例子中,我能够实现所需的功能,但我只能更新/推送一个JSON记录.我希望能够通过JSON添加多个记录?我怎么能实现这个目标?我假设我可能必须创建某种for循环并将每个JSON结果推送到observable但我希望淘汰赛可能有更好的方法通过JSON更新/解析?

下面是迄今为止我所取得的成果:http://jsfiddle.net/sparkhill/crSbt/

     function Users(user_id, password) {
    this.user_id = ko.observable();
    this.password = ko.observable();
}

var viewModel = {

    users: ko.observableArray([]),


    addUser: function () {
        this.users.push({

            user_id: "",
            password: ""
        });
    },

    addJSON: function () {


        //Works Fine
        var JSONdataFromServer
        ='{"user_id":"frances","password":"password"}';

        //More than one result - wont map - Would Ideally like to map lots of records at one time
//var JSONdataFromServer ='{"user_id":"frances","password":"password"}, {"user_id":"frances","password":"password"}';

        var dataFromServer = ko.utils.parseJson(JSONdataFromServer);


        this.users.push(dataFromServer);

         //Tried
        //this.users.push(JSON.parse(JSONdataFromServer));


    }

};

viewModel.users();
ko.applyBindings(viewModel);

    </script> 
Run Code Online (Sandbox Code Playgroud)

更新这似乎工作,但我想知道他们是否是一个更有效的方法?

addJSON: function …
Run Code Online (Sandbox Code Playgroud)

knockout-2.0 knockout.js

12
推荐指数
1
解决办法
2万
查看次数

标签 统计

iis ×1

iis-6 ×1

iis-7 ×1

knockout-2.0 ×1

knockout.js ×1