猿问

knockout 怎么监控数组元素的变化

RT 在input里面输入值,可以改变name 但是不能改变数组的 内容

$(function () {

    var person = function(name, children) {

        this.name = name;

        this.children = ko.observableArray(ko.utils.arrayMap(children,function (item) {

            return ko.observable(item)

        }));


        this.addChild = function() {

            this.children.push(" ");

        }.bind(this);

    }


    var model =new person('',[''])


    ko.applyBindings(model);


    $(".btn").click(function () {

        var tmpdata = ko.toJSON(model)

        console.log(tmpdata)

    });

})

<div><input type="text" data-bind="value:name"></div>

<ul data-bind="foreach:children">

    <li><input type="text" data-bind="value:$data"></li><button data-bind="click:$root.addChild">新增</button>


</ul>

<button class="btn">输出数据</button>


largeQ
浏览 1021回答 1
1回答
随时随地看视频慕课网APP

相关分类

JavaScript
我要回答