$(document).ready(function () {
var canvas = document.getElementById('canvas'),
context = canvas.getContext('2d');
function deseneazaGrafic(valori) {
var h = canvas.height;
var w = canvas.width / valori.length;
context.fillStyle = "#DEDEDE";
context.fillRect(0, 0, canvas.width, canvas.height);
context.fillStyle = "red";
context.strokeStyle = "black ";
context.lineWidth = 2;
var f = canvas.height * 0.9 / Math.max.apply(Math, valori);
for (var i = 0; i < valori.length; i++) {
context.beginPath();
context.rect((i + 0.1) * w, h - valori[i] * f, 0.8 * w, valori[i] * f);
context.fill();
context.stroke();
}
}
$("#btnGrafic").click(function () {
deseneazaGrafic(eval("[" + $("#valori").val() + "]"));
});
$("#scrie").click(function(){
});
});
这是我的java脚本。这从一些书面值中得出一个图表。我怎样才能改变&#34; valori&#34;成为jsonObject.values?非常感谢
答案 0 :(得分:0)
作为正式答案(详见问题评论),函数deseneazaGrafic
接受一个简单的javascript数组。现在它eval
{(1)}(或者......糟糕)textarea(#valori
)的价值。你可以使用任何javascript数组。从JSON文件中获取值时,只需将其作为参数传递给deseneazaGrafic
。例如:
var jsonObject = JSON.parse(myJSONString); // the JSON object contains an array called "values"
deseneazaGrafic(jsonObject.values);
假设数组被正确解析,这应该可以很好地呈现图形。