0

在基本表结构中,我希望能够一次显示一组对象中的一组数据。单击按钮或类似的东西将显示数组中的下一个对象。

诀窍是,我不想使用可见标签而只是隐藏额外的数据。

4

2 回答 2

2

简单地说,您可以只指定指示您要显示的当前元素的属性以及该元素在您的observableArray.. 中的索引。我已经做了简单的演示检查它。

<div id="persons"> <span data-bind="text: selectedPerson().name"></span>
    <br/>
    <button data-bind="click: showNext" id="btnShowNext">Show Next</button>
    <br/>
</div>

//这里是JS代码

function ViewModel() {
    people = ko.observableArray([{
        name: "Bungle"
    }, {
        name: "George"
    }, {
        name: "Zippy"
    }]);
    showNext = function (person) {
        selectedIndex(selectedIndex() + 1);
    };
    selectedIndex = ko.observable(0);
    selectedPerson = ko.computed(function () {
        return people()[selectedIndex()];
    });
}
ko.applyBindings(new ViewModel());

请检查这个jsfiddle

于 2013-05-29T16:26:55.143 回答
1

为单个对象创建可观察属性,然后单击下一步时将该属性设置为其他对象,UI 将被更新。

于 2013-05-29T15:48:57.757 回答