0

JSON 回调返回我格式化的日期,只有它。根据给定的日期,我必须建立一个树结构,它将不同的年、月和日分开。只有在回调中获得的日期才会包含在树中。

我在 ServiceSucceedCallBack 上写了如下内容:

                        var daty = '';
                        var roczniki = '';
                        var miesiace = '';
                        var dni = '';
                        for (var i in result.Content) {
                            roczniki += '<ol id="lata">' + result.Content[i].getFullYear() + '</ol>';
                            miesiace += '<ol id="miesiace"><li>' + (result.Content[i].getMonth() + 1) + '</li></ol>';
                            dni += '<ol id="dni"><li>' + result.Content[i].getDate() + '</li></ol>';
                        }
                        var $st = $('#toolLeft');
                        $st.append(roczniki);
                        $('#lata').append(miesiace);
                        $('#miesiace').append(dni);

它提供了一个树形视图,但每个日期都写入第一个节点(第一个找到的年份),第二个问题是我不知道如何省略数据重复。我的意思是,如果某年在树中占有一席之地,那么同年的另一个日期应该进入相同的节点级别,而不是创建新的....

4

1 回答 1

0

它提供了一个树视图,但每个日期都写入第一个节点

用于JSON.stringify构建 DOM,如以下问题所示:

Javascript:使用 reviver 功能,我似乎无法更改所有键,同时连接数字

如果某年在树中占有一席之地,那么同年的另一个日期应该转到同一节点级别,不要创建新的

使用循环插入每个日期作为对象字面量的键,例如 foo,然后用于JSON.parse删除重复键。这是一个例子:

 var foo = {"2000-01-01":"good", "2001-09-11":"bad", "2000-11-02":"ugly", "2000-01-01":"jetson"}
 var bar = JSON.parse(JSON.stringify(foo) )
 var baz = JSON.stringify(bar)
于 2014-02-13T22:05:37.143 回答