0

我尝试在jsgrid的帮助下创建一个包含一些行和列的表。单击一行时,它应该展开并显示一些 SubRows。因此,我创建了一个 row.click() 函数。但是,当单击该行时,它会将新内容附加到不在我当前行下的行的末尾。这是一些代码示例

这是一个有效的jsfiddle

rowRenderer: function(item) {
        var row = $("<tr>");

        var addressesGrid = $('<tr>').addClass('nested-grid').hide();
        addressesGrid.jsGrid({
            width: "100%",
            height: "auto",
            data: data,
            heading: false,
            fields: col
        })
        items= Object.keys(item)
       items.forEach(function(key){
           if(key!=items[items.length-1]) {
               var cell = $("<td>").addClass("jsgrid-cell").append(item[key])
               row.append(cell)
           }
        })
        row.click(function () {
            addressesGrid.toggle();
        })
        row.append(addressesGrid);


        return row
    }
4

1 回答 1

1

您需要返回两行,而不是附加到第一行:

return row.add(addressesGrid);

这是更正的小提琴http://jsfiddle.net/9ftwLsmf/

于 2017-07-29T19:09:57.697 回答