图表没有从它从 Jquery 收到的值更新

2022-01-22 00:00:00 django javascript ajax chart.js

Use Case : I am trying to populate my chart based on the data fetched by Jquery.

$.getJSON("/dashboard/", function(data, status)
        {

            var test_data=data
            console.log(test_data)
            chart.data.datasets[0].data=test_data;
            chart.update();
        }

output of console.log(test_data)

 data: Array(3)
    0: 500
    1: 200
    2: 50
    length: 3

However this is not updating my chart .

Chart displays no values, without any error

When i hard code the value as shown below , the chart is getting updated.

$.getJSON("/dashboard/", function(data, status)
        {

            var test_data=data
            console.log(test_data)
            chart.data.datasets[0].data=[500,200,50];
            chart.update();
        } 

After hard coded value What is the trick i am missing here?

Update

The problem was that i was not using the response of Ajax in my fucntion, i have updated my code like below and it worked

$.getJSON("/dashboard/", function(response, status)
        {

            chart.data.datasets[0].data=response.data;
            chart.update();
        }
        )

解决方案

Your response from API is object with data property, not just array with results

$.getJSON("/dashboard/", function(response, status)
        {
            chart.data.datasets[0].data = response.data;
            chart.update();
        } 

相关文章