Кто-нибудь знает, что означает javascript (type: load)? Я собираю его событие, однако это должен быть объект?!
Любой совет оценен!
BREAK -> var data = new google.visualization.DataTable (jsonData.jsonObj);
Работа с гугл-чартами ....
charts.js
(function($){
var charts = {
init: function(){
this.services();
},
services: function(){
var data = {
uri : SITEURL + '/moduleTest/servicelist', //siteurl defined in index.php
div : 'service-chart',
title : 'Service List'
}
charts.ajaxCallback(data);
},
ajaxCallback : function(data){
$.ajax({
url : data.uri,
type : 'POST',
dataType : 'json',
success : function(callback){
var jsonData = {
div : data.div,
jsonObj : callback,
title : data.title
}
drawCharts(jsonData);
}
});
}
}
$(function(){
charts.init();
});
})(jQuery);
google.load('visualization', '1.0', {'packages':['corechart']});
google.setOnLoadCallback(drawCharts);
function drawCharts(jsonData){
var data = new google.visualization.DataTable(jsonData.jsonObj);//Break point ( type : load )
var options =
{
'title': jsonData.title,
'width':250,
'height':300
};
var chart = new google.visualization.PieChart(document.getElementById(jsonData.div));
chart.draw(data, options);
}
Services.php (функциональный тест)
public function servicelist(){ //TEST data
if($this->input->is_ajax_request()){
echo "
{
cols: [{id: 'task', label: 'Employee Name', type: 'string'},
{id: 'startDate', label: 'Start Date', type: 'date'}],
rows: [{c:[{v: 'Mike'}, {v: new Date(2008, 1, 28), f:'February 28, 2008'}]},
{c:[{v: 'Bob'}, {v: new Date(2007, 5, 1)}]},
{c:[{v: 'Alice'}, {v: new Date(2006, 7, 16)}]},
{c:[{v: 'Frank'}, {v: new Date(2007, 11, 28)}]},
{c:[{v: 'Floyd'}, {v: new Date(2005, 3, 13)}]},
{c:[{v: 'Fritz'}, {v: new Date(2011, 6, 1)}]}
]
}
";
}
}
Хорошо, я, возможно, не имел никакого смысла с вопросом (это было 6 утра).
Я передаю объект json конструктору моих диаграмм Google (drawCharts ()).
var jsonData = {
cols: [{id: 'task', label: 'Employee Name', type: 'string'},
{id: 'startDate', label: 'Start Date', type: 'date'}],
rows: [{c:[{v: 'Mike'}, {v: new Date(2008, 1, 28), f:'February 28, 2008'}]},
{c:[{v: 'Bob'}, {v: new Date(2007, 5, 1)}]},
{c:[{v: 'Alice'}, {v: new Date(2006, 7, 16)}]},
{c:[{v: 'Frank'}, {v: new Date(2007, 11, 28)}]},
{c:[{v: 'Floyd'}, {v: new Date(2005, 3, 13)}]},
{c:[{v: 'Fritz'}, {v: new Date(2011, 6, 1)}]}
]
}
console.log(typeof jsonData) === object // Correct, what I expect!
console.log(jsonData) === load // not what I expect, I expect json object