我在同一页面上创建多个图表,现在我想要一个智能功能来更新单个图表或所有图表
当我对对象名称进行硬编码时它工作正常,但我希望能够从执行它的按钮中获取对象名称
<button class="update" name="prodChart1" funtionName="f_A_GetTotalWorkedHours"> Test</button>
var prodChart1 = document.getElementById('ProdChart1');
var prodChart1 = new Chart( prodChart1, {
type: "line",
data: <%=f_A_GetTotalWorkedHours(Dateadd("d",-2,Date), Date, 48, Line, "")%>,
options: {
color: 'red',
scales: {
yAxes: [{
ticks: {
beginAtZero: true
}
}]
}
}
});
$(".update").click(function(){
UpdateChart($(this).attr("name"),"")
});
function UpdateChart(chartName, aFunction) {
$.ajax({
type: 'POST', //post method
url: 'AnalyticsAPI.asp?',
dataType: "text",
data: {requestParam: 'f_A_GetTotalWorkedHours|'+ getParam()[0] +'|'+ getParam()[1] +'|48' },
success: function (result, textStatus, jqXHR)
{
data3= result;
chartName.config.data = JSON.parse(data3);
chartName.update();
},
error: function (xhr, ajaxOptions, thrownError) {
// alert(xhr.status);
alert(thrownError);
}
});
};
所以“更新”函数应该获取现有图表对象的名称,对象名称是按钮名称属性的一部分。我得到的错误是“UpdateChart(chartName, aFunction)”chartname 不是一个对象。如果我在调用中对对象名称进行硬编码,它会起作用。
白猪掌柜的
相关分类