5

我正在使用 treetable 插件,我想从以前从 xml 文件填充的 Taffy db 动态加载一些数据行。我已经验证 loadBranch 使用“null”作为节点在表的根上工作正常,但我似乎无法使其成为第一行的子节点。

HTML:

<table id='data_tree'>
<tr class="branch" data-tt-id="1">
<td>Studies</td>
</tr>
</table>

Javascript:

$(window).load(function(){
    studies_db().each( function (record,recordnumber) {
        $("#data_tree").treetable("loadBranch",1,
                            "<tr>"+
                            "<td><b>Accession:</b> "+record.accession+"<br>"+
                            "<b>Title:</b> "+record.title+"<br>"+
                            "<b>Authors:</b> "+record.authors+"<br>"+
                            "<b>Release date: </b>"+record.date+"<br>"+
                            "<b>Number of markers: </b>"+record.samples+"<br>"+
                            "</td></tr>")
         });
});
4

1 回答 1

9

loadBranch函数需要一个节点对象,而不是节点标识符。试试这个:

$(window).load(function(){
  studies_db().each( function (record,recordnumber) {
    var node = $("#data_tree").treetable("node", "1");

    $("#data_tree").treetable("loadBranch", node,
      "<tr data-tt-id='2'>"+
      "<td><b>Accession:</b> "+record.accession+"<br>"+
      "<b>Title:</b> "+record.title+"<br>"+
      "<b>Authors:</b> "+record.authors+"<br>"+
      "<b>Release date: </b>"+record.date+"<br>"+
      "<b>Number of markers: </b>"+record.samples+"<br>"+
      "</td></tr>");
  });
});

请注意,我还在 tr 中添加了一个 data-tt-id 属性,否则 treetable 插件会报错。

我不得不承认,有些函数需要一个节点标识符,而另一些函数需要一个Node对象,这令人困惑……这是将来应该精简的东西。

于 2013-10-14T14:26:52.017 回答