我有一张通过SignalR + knockout.js动态填充的表格

<table id="infoTable" border="0" class="table table-striped">
    <thead style="cursor:pointer">
        <tr data-bind="foreach: headers">
            <td data-bind="click: $parent.toggleSort, text: title"></td>
        </tr>
    </thead>
    <tbody>
        <!-- ko foreach: machines -->
        <tr>
            <td data-bind="text: machineName"></td>
            <td data-bind="text: cpu"></td>
            <td data-bind="text: memUsage"></td>
            <td data-bind="text: memTotal"></td>
            <td data-bind="text: memPercent"></td>
            <td>
                <div class="demo-container">
                    <div id="placeholder1" class="demo-placeholder"></div>
                </div>
            </td>
        </tr>
    </tbody>
</table>


我想以某种方式添加一个新的单元格并将带有MemPercent的图表(flotchart.org)绘制到该单元格中。

如何添加呢?

在静态情况下,可以通过以下方式制作图表:

var container1 = $("#placeholder1");
        var plot1 = $.plot(container1, dataSeries, {
            series: {
                shadowSize: 0
            },
            yaxis: {
                min: 0,
                max: 100
            },
            xaxis: {
                show: false
            }
    });

function update() {
            plot1.setData(series);
            plot1.draw();
            setTimeout(update, updateInterval);
        }

        update();


我的问题:
1.如何动态添加带有图表的单元格?
2.在更新过程中如何访问任何图表容器?

谢谢

最佳答案

您可以使用jQuery将图表添加到表格行中

$('tbody').append('<tr><td data-bind="text: machineName"></td><td data-bind="text: cpu"></td><td data-bind="text: memUsage"></td><td data-bind="text: memTotal"></td><td data-bind="text: memPercent"></td><td><div class="demo-container"><div id="placeholder1" class="demo-placeholder"></div></div></td></tr>');


我认为您需要在循环中输入此代码。

要将数据放入单元格,可以使用Ajax Call

10-07 19:42
查看更多