Javascript SAPUI5为树表/空行创建JSON

Javascript SAPUI5为树表/空行创建JSON,javascript,json,data-binding,sapui5,treetable,Javascript,Json,Data Binding,Sapui5,Treetable,我想从一个JSON请求创建一个SAPUI树表,目前我的输出如下所示,每个节点都包含一个空行->我不知道这是从哪里来的,我不想有这些空行: 我的表格定义: //Create an instance of the table control var oTreeTable = new sap.ui.table.TreeTable({ columns: [ new sap.ui.table.Column({ label : new sap.ui.c

我想从一个JSON请求创建一个SAPUI树表,目前我的输出如下所示,每个节点都包含一个空行->我不知道这是从哪里来的,我不想有这些空行:

我的表格定义:

//Create an instance of the table control
var oTreeTable = new sap.ui.table.TreeTable({
    columns: [
        new sap.ui.table.Column({
                label : new sap.ui.commons.Label({
                text : "",
            }),
            template : 
                new sap.ui.commons.TextView({
                text : "{Title}",
                textAlign : sap.ui.core.TextAlign.Begin,
            }),     
        }),
        //new sap.ui.table.Column({label: "Mon01", template: "Mon01"}),
        //new sap.ui.table.Column({label: "Mon02", template: "Mon02"}),
        //new sap.ui.table.Column({label: "Mon03", template: "Mon03"}),
        //new sap.ui.table.Column({label: "Mon04", template: "Mon04"}),
    ],
    selectionMode: sap.ui.table.SelectionMode.None,
    enableColumnReordering: false,
    expandFirstLevel: false,
    toggleOpenState: function(oEvent) {

    }
});
My getJSON并将平面结构转换为父/子结构

在试图删除要点的过程中,我发现它们包含在HTML中,但我不知道为什么。如果我通过开发工具删除这个,那么要点就不存在了

它来自CSS图标类

.SapuitableTreeconleaf{ 背景图片:urlico12_leaf.gif; }

通过

.SapuitableTreeconleaf{ 背景图像:无!重要;
}

只要去掉_元数据,将其设置为平面[key]。_元数据=,我想树表渲染器必须将其作为另一个子级

// flatten to object with string keys that can be easily referenced later
var flat = {};
for (var i = 0; i < data.d.results.length; i++) {
    var key = 'id' + data.d.results[i].ID;
    flat[key] = data.d.results[i];
    flat[key].__metadata = "";
}
更新的代码段: sap.ui.jsviewtest.view{ getControllerName:函数{ 返回测试控制器; }, createContent:functionoController{ var oTreeTable=new sap.ui.table.TreeTable{ 栏目:[ 新的sap.ui.table.Column{ 标签:标题, 模板:标题 }, 新的sap.ui.table.Column{ 标签:Mon01, 模板:Mon01 }, 新的sap.ui.table.Column{ 标签:Mon02, 模板:星期一02 }, 新的sap.ui.table.Column{ 标签:Mon03, 模板:星期一03 }, 新的sap.ui.table.Column{ 标签:Mon04, 模板:星期一 }, ], selectionMode:sap.ui.table.selectionMode.None, enableColumnReordering:false, 第一级:false, toggleOpenState:functionoEvent{ } }; 风险值数据={ d:{ 结果:[{ __元数据:{ 身份证件:http://url/EntitySet'00000001', uri:http://url/EntitySet'00000001', 类型:NAMESPACE\u SRV.Entity }, 星期一:, 星期一:, 2014年9月9日(星期一), 周一:2014年8月8日, 标题:家长1, ID:00000001, 父ID:, 孩子:, }, { __元数据:{ 身份证件:http://url/EntitySet'00000002', uri:http://url/EntitySet'00000002', 类型:NAMESPACE\u SRV.Entity }, 星期一:, 星期一:, 星期一02:1560, 星期一:1550, 标题:家长2, ID:00000002, 父ID:, 孩子:, }, { __元数据:{ 身份证件:http://url/EntitySet'00000003', uri:http://url/EntitySet'00000003', 类型:NAMESPACE\u SRV.Entity }, 星期一:, 星期一:, 星期一:1860, 星期一:1750, 标题:儿童1, ID:00000003, 父ID:00000002, ChildId:00000001, }, { __元数据:{ 身份证件:http://url/EntitySet'00000004', uri:http://url/EntitySet'00000004', 类型:NAMESPACE\u SRV.Entity }, 星期一:, 星期一:, 星期一:1860, 星期一:1750, 标题:儿童1_1, ID:00000004, 父ID:00000003, ChildId:00000001, }, { __元数据:{ 身份证件:http://url/EntitySet'00000005', uri:http://url/EntitySet'00000005', 类型:NAMESPACE\u SRV.Entity }, 星期一:, 星期一:, 星期一02:2060, 星期一:1950, 标题:儿童2, ID:00000005 , 父ID:00000002, ChildId:00000001, }, { __元数据:{ 身份证件:http://url/EntitySet'00000006', uri:http://url/EntitySet'00000006', 类型:NAMESPACE\u SRV.Entity }, 星期一:, 星期一:, 星期一02:2060, 星期一:1950, 标题:儿童3, ID:00000006, 父ID:00000002, ChildId:00000001, }] } }; var flat={}; 对于var i=0;i您好,您能给出一个JSON字符串的示例吗?添加了它,我希望这是您所期望的。对不起,我将它稍微更改为您从图片中看到的内容,添加了一个子元素,但我认为您希望看到结构。谢谢艾伦!哇!可以你是怎么到那里的?如果您能让我知道如何解决这样的问题,那将非常感谢,您调试过了吗?如果是,怎么做?再次感谢艾伦!!嗨,zyrex,我没有调试它。我首先检查了yaku的示例数据,树表正确地呈现了数据,因此我觉得您的数据一定有问题,所以我询问了您的数据示例,您的数据中存在_metadata对象,因此我删除了该对象并进行了尝试,成功了。稍后我将试图找到UI5树表出现这种行为的根本原因。最后一件事,我在每一个子行前面都有一个项目符号,每一行不可展开的开头都有一个项目符号,这在yaku的示例中不是这样,在绑定之前还有什么我应该清除的吗?非常感谢。嗨,zyrex,我刚刚添加了代码片段,它适合我,一开始没有要点。嗨,艾伦,我不知道出了什么问题,但在我的例子中,它仍然显示了那些要点。我在getJSON期间重新处理json,这可能是个问题吗?目前我看不出代码有什么不同。。。除了我必须通过{Title}访问我的数据之外,你也可以通过Title。。。隐马尔可夫模型
{
  "d" : {
    "results" : [
      {
        "__metadata" : {
          "id" : "http://url/EntitySet('00000001')",
          "uri" : "http://url/EntitySet('00000001')",
          "type" : " NAMESPACE_SRV.Entity"
        },
        "Mon04" : "",
        "Mon03" : "",
        "Mon02" : "09/2014",
        "Mon01" : "08/2014",
        "Title" : "Parent 1",
        "ID" : "00000001",
        "ParentId" : "",
        "ChildId" : "",
      },
      {
        "__metadata" : {
          "id" : "http://url/EntitySet('00000002')",
          "uri" : "http://url/EntitySet('00000002')",
          "type" : "NAMESPACE_SRV.Entity"
        },
        "Mon04" : "",
        "Mon03" : "",
        "Mon02" : "1560",
        "Mon01" : "1550",
        "Title" : "Parent 2",
        "ID" : "00000002",
        "ParentId" : "",
        "ChildId" : "",
      },
      {
        "__metadata" : {
          "id" : "http://url/EntitySet('00000003')",
          "uri" : "http://url/EntitySet('00000003')",
          "type" : "NAMESPACE_SRV.Entity"
        },
        "Mon04" : "",
        "Mon03" : "",
        "Mon02" : "1860",
        "Mon01" : "1750",
        "Title" : "Child 1",
        "ID" : "00000003",
        "ParentId" : "00000002",
        "ChildId" : "00000001",
      },
      {
        "__metadata" : {
          "id" : "http://url/EntitySet('00000004')",
          "uri" : "http://url/EntitySet('00000004')",
          "type" : "NAMESPACE_SRV.Entity"
        },
        "Mon04" : "",
        "Mon03" : "",
        "Mon02" : "1860",
        "Mon01" : "1750",
        "Title" : "Child 1_1",
        "ID" : "00000004",
        "ParentId" : "00000003",
        "ChildId" : "00000001",
      },
      {
        "__metadata" : {
          "id" : "http://url/EntitySet('00000005')",
          "uri" : "http://url/EntitySet('00000005')",
          "type" : "NAMESPACE_SRV.Entity"
        },
        "Mon04" : "",
        "Mon03" : "",
        "Mon02" : "2060",
        "Mon01" : "1950",
        "Title" : "Child 2",
        "ID" : "00000005",
        "ParentId" : "00000002",
        "ChildId" : "00000001",
      },
      {
        "__metadata" : {
          "id" : "http://url/EntitySet('00000006')",
          "uri" : "http://url/EntitySet('00000006')",
          "type" : "NAMESPACE_SRV.Entity"
        },
        "Mon04" : "",
        "Mon03" : "",
        "Mon02" : "2060",
        "Mon01" : "1950",
        "Title" : "Child 3",
        "ID" : "00000006",
        "ParentId" : "00000002",
        "ChildId" : "00000001",
      }
    ]
  }
}
// flatten to object with string keys that can be easily referenced later
var flat = {};
for (var i = 0; i < data.d.results.length; i++) {
    var key = 'id' + data.d.results[i].ID;
    flat[key] = data.d.results[i];
    flat[key].__metadata = "";
}