[Chartjs]-Loading or Activating ChartJS on Load

1👍

You can put the code that draws the chart in a function and call that function on both the $(document).ready and $("#submit-btn").click event, like this:

function drawChart() {
  var outputyearly = $('#outputyearly');
  var amount = parseInt($('#amount').val().replace(/,/g, ''), 10);
  var rate = parseFloat($('#rate').val(), 10);
  var term = parseFloat($('#term').val(), 10);

  //Destroy the dougnut chart here, not sure how it's accessible, but it won't work through window.onload

  var ctx = document.getElementById("myChart").getContext("2d");

  new Chart(ctx, {
      type: 'doughnut',
      data: data,
      options: options
  });
}

$(document).ready(function() {
  drawChart();
  $("#submit-btn").click(function (e) {
     e.preventDefault();
     drawChart();
   });
 });

Note that $(document).ready already imposes the code inside of it to be executed when the page is done, so putting a window.onload inside of it won’t make any difference.

Leave a comment