0

使用这个http://jsfiddle.net/rniemeyer/NFbxc/我做了几乎相同的东西(http://jsfiddle.net/uhtshka/HE94X/),它实现了我几乎所有的需求,但仍然存在一个问题。从以下链接可以看出,我们使用的数组非常简单。有点儿:

var simpleArray = [
                   {... som data ...},
                   {... som data ...},
                   {... som data ...}];

但我试图用更复杂的数组结构来实现相同的功能,比如:

var notsosimpleArray = [{
     dayname: 'Monday', rows:[
             col1: 'data1',
             col2: 'data2',
             col3: 'data3',
     ]},{dayname: 'Tuesday', rows:[
             col1: 'data1',
             col2: 'data2',
             col3: 'data3',
     ]}];

这可能与保存相同的功能有关吗?

4

1 回答 1

1

正如您所描述的,您当然可以对复杂对象使用淘汰赛。

您引用的 JSFiddle 存在一些问题(在窗口对象上设置和引用的 var1-5?),所以我没有尝试解决添加行函数,但我确实更新了小提琴中使用行数组的示例每天的数据。

这是链接:http: //jsfiddle.net/HE94X/1/

请记住,在您的过滤器函数中,您想要返回一个数组,您可以通过查找日期来找到它。ko.utils.arrayForEach现在不需要该函数,因为该数组已嵌入到当天的对象数据中。

您应该能够将此逻辑扩展到添加行函数,以便它可以将条目推送到当天的行数组中。

于 2013-04-07T20:10:37.623 回答