Я ищу проверку источника данных после того, как он будет следить за количеством элементов. По какой-то причине я не могу заставить события dataBound или dataBinding даже загореться.Kendo UI Chart DataBinding не срабатывает
Данные фактически передаются в функцию, поэтому при создании сетки она имеет локальные данные.
Пример: http://dojo.telerik.com/IjAKo/2
Исходный код:
<div id="grid"></div>
<script>
function onDataBinding(e) {
console.log('here');
}
$(document).ready(function() {
var chart = $("#grid").kendoChart({
chartArea: {
height: 250,
},
legend: {
position: "bottom",
labels: {
font: "bold 10px Arial",
}
},
seriesDefaults: {
type: "column",
spacing: 0,
overlay: {
gradient: "none"
}
},
series: [{
name: "ESCROW",
color: "#cccbcb",
data: [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12]
}, {
name: "NON-ESCROW",
color: "#406f8c",
data: [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12]
}],
categoryAxis: {
line: {
visible: false
},
categories: ["Jan", "Feb", "Mar", "Apr", "May", "Jun", "Jul", "Aug", "Set", "Oct", "Nov", "Dec"],
majorGridLines: {
visible: false
}
},
valueAxis: {
labels: {
format: "{0:N0}"
},
line: {
visible: false
},
majorGridLines: {
visible: false
},
max: 20
},
tooltip: {
visible: true,
format: "{0:N0}"
},
dataBinding: onDataBinding // tried to do it here.
});
// tried to bind after initialization
chart.bind("dataBound", function(e) {
alert('here')
});
});
</script>
Спасибо, что отчасти неясный, но это действительно работает. Не понял, что у меня должен быть пустой источник данных. – lucuma
Если вы оставите его так, как будто ваше свойство 'dataSource' будет содержать 0 dataItems, потому что вы явно указали свои данные в диаграммах. Вы можете найти количество строк данных непосредственно в параметрах диаграммы. Чтобы иметь данные в вашей диаграмме 'dataSource', вам необходимо перестроить диаграмму costructor. См. Этот пример: http://demos.telerik.com/kendo-ui/line-charts/local-data-binding –