正如我在标题中提到的,我想将 Javascript 变量传递给 JQuery。我花了一整天的时间寻找方法,但一无所获。我尝试使用ajax将变量传递给PHP,然后我可以获得响应数据。但是当我想将它传递到 highcharts 时,它不起作用,有人可以告诉我如何做到这一点吗?我将非常感激。
//this is the ajax I used to send the request to PHP , I can get the data in data_ajax.
function chooseCategory(mat_id){
var ajax = ajaxObj("POST", "test.php");
ajax.onreadystatechange = function() {
if(ajaxReturn(ajax) == true) {
data_ajax = ajax.responseText;
alert(data_ajax);}
}
ajax.send("id=" + material_id);
}
//this is part of the jquery code, the charts can not get any data from variable data_ajax.
$(function () {
$('#container3').highcharts({
...
...
series: [{ type: 'line', name: '#numbers:', data: data_ajax
最佳答案
由于 Ajax 调用是异步的,因此您需要等待其完成后再加载 Highcharts。为此,您通常使用回调。将图表加载代码放入函数“loadCharts(data)”中,并从 Ajax 处理程序内部调用该函数。像这样的事情:
function chooseCategory(mat_id){
// ...
ajax.onreadystatechange = function() {
if(ajaxReturn(ajax) == true) {
data_ajax = ajax.responseText;
alert(data_ajax);
loadCharts(data_ajax);
}
};
}
function loadCharts(data_ajax)
$('#container3').highcharts({ ... });
}
关于php - 如何将 JavaScript 变量传递给 JQuery,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18728723/