javascript — ChartJS не работает в .php, загруженном jquery .load () (AJAX)

этот плагин не работает, когда я использую jquery ajax функцию .load () Как решить эту проблему? Это мой код .php:

<script src="../Chart.js"></script>
<script type="text/javascript" src="../functions.js"></script>
<script src="../jquery-2.1.4.js"></script>
<link rel="stylesheet" href="../jquery-ui.min.css">
<script src="../external/jquery/jquery.js"></script>
<script src="../jquery-ui.min.js"></script>
<canvas id="canvas" width="400" height="400"></canvas>

And this is my functions.js:
jQuery(document).ready(function() {
var randomScalingFactor = function(){ return Math.round(Math.random()*100)};
var lineChartData = {
labels : ["January","February","March","April","May","June","July"],
datasets : [
{
label: "My First dataset",
fillColor : "rgba(220,220,220,0.2)",
strokeColor : "rgba(220,220,220,1)",
pointColor : "rgba(220,220,220,1)",
pointStrokeColor : "#fff",
pointHighlightFill : "#fff",
pointHighlightStroke : "rgba(220,220,220,1)",
data : [randomScalingFactor(),randomScalingFactor(),randomScalingFactor(),randomScalingFactor(),randomScalingFactor(),randomScalingFactor(),randomScalingFactor()]
},
{
label: "My Second dataset",
fillColor : "rgba(151,187,205,0.2)",
strokeColor : "rgba(151,187,205,1)",
pointColor : "rgba(151,187,205,1)",
pointStrokeColor : "#fff",
pointHighlightFill : "#fff",
pointHighlightStroke : "rgba(151,187,205,1)",
data : [randomScalingFactor(),randomScalingFactor(),randomScalingFactor(),randomScalingFactor(),randomScalingFactor(),randomScalingFactor(),randomScalingFactor()]
}
]

}

window.onload = function(){
var ctx = document.getElementById("canvas").getContext("2d");
window.myLine = new Chart(ctx).Line(lineChartData, {
responsive: true
});
}
});

Почему это не работает? Этот код из образца в пакете этого плагина! Так как это возможно, что это не работает? Я думаю, что это из-за использования функции AJAX из jquery .load (). Как решить эту проблему? Пожалуйста помоги.

1

Решение

Вот рабочий пример вашего кода, я удалил назначение «onload», так как у вас уже есть событие готовности документа, которое выполняет все это. И удалил функцию и данные, которые не должны быть там. Посмотрите и дайте мне знать, если вы чего-то не понимаете

 window.onload = function(){ //is removed

https://jsfiddle.net/L7zgL02w/2/

А также, вы должны загрузить jquery.js раньше других файлов (так как ваш functions.js использует jquery)

1

Другие решения

Других решений пока нет …

По вопросам рекламы ammmcru@yandex.ru
Adblock
detector