Javascript 如何从chart.js的html表中动态添加元素

Javascript 如何从chart.js的html表中动态添加元素,javascript,html,charts,html-table,Javascript,Html,Charts,Html Table,有人能帮忙解决这个问题吗 我正在使用chart.js将图表开发到我的asp.net mvc应用程序中 问题是我无法将html表中的元素动态添加到图表中 <canvas id="myChart" width="600" height="400"></canvas> //html5 canvas <script type="text/javascript"> var ctx = document.getElementB

有人能帮忙解决这个问题吗

我正在使用chart.js将图表开发到我的asp.net mvc应用程序中

问题是我无法将html表中的元素动态添加到图表中

<canvas id="myChart" width="600" height="400"></canvas> //html5 canvas    
   <script type="text/javascript">    
            var ctx = document.getElementById("myChart").getContext("2d");    
            var data = {                                 
                datasets: [    
                           {
                              fillColor: "rgba(223,104,27,0.5)",    
                              strokeColor: "rgba(220,220,220,1)",    
                              data: getcountdata1()    
                            },    
                            {    
                               fillColor: "rgba(151,187,205,0.5)",    
                               strokeColor: "rgba(151,187,205,1)",    
                               data: getcountdata2()    
                          }]    
   myNewChart = new Chart(ctx).Line(data, options);
//html5画布
var ctx=document.getElementById(“myChart”).getContext(“2d”);
变量数据={
数据集:[
{
填充颜色:“rgba(223104,27,0.5)”,
strokeColor:“rgba(2201)”,
数据:getcountdata1()
},    
{    
填充颜色:“rgba(151187205,0.5)”,
strokeColor:“rgba(151187205,1)”,
数据:getcountdata2()
}]    
myNewChart=新图表(ctx).Line(数据、选项);
上面的工作很好,因为在数据集中我硬编码了数据集中元素的数量,但实际上这应该检查HTML表并从表中获取数据

现在的问题是如何使数据集根据表中的行数获得动态值

例如,我编写了一个Javascript函数(我尝试了以下coed):

var数据:
{            
数据集:getdata()
}
函数getdata()
{
行=document.getElementById('tblresult').getElementsByTagName('tbody')[0].getElementsByTagName('tr').length;

对于(i=0;i您需要将每一行传递给
getcountdata()
函数

rowsDomElements = document.getElementById('tblresult').getElementsByTagName('tbody')[0].getElementsByTagName('tr');

for(i=0;i<rowsDomElements.length;i++)
{
    datasetdata[i] = [
    {
         fillColor: getrandomfillcolor(),
         strokeColor: getrandomstrokecolor(),
         data: getcountdata(rowsDomElements[i])
    }]
}

function getcountdata(row)
{
    //create data as needed
}
rowsdomements=document.getElementById('tblresult').getElementsByTagName('tbody')[0]。getElementsByTagName('tr');

对于(i=0;iSYNTAX错误是问题所在)而不是datasetdata[i]=[{fillColor:getrandomfillcolor(),strokeColor:getrandomstrokecolor(),data:getcountdata(RowsDomeElements[i])],我们必须修改datasetdata[i]={fillColor:getrandomfillcolor(),strokeColor:getrandomstrokecolor()),data:getcountdata(rowsdomeElements[i])从datasetdata中获取[]。谢谢
rowsDomElements = document.getElementById('tblresult').getElementsByTagName('tbody')[0].getElementsByTagName('tr');

for(i=0;i<rowsDomElements.length;i++)
{
    datasetdata[i] = [
    {
         fillColor: getrandomfillcolor(),
         strokeColor: getrandomstrokecolor(),
         data: getcountdata(rowsDomElements[i])
    }]
}

function getcountdata(row)
{
    //create data as needed
}