[英]calling function from ajax post response
我正在使用使用JavaScript的圖形庫 。 在使用另一個ajax腳本獲取數據后,我必須運行此腳本。 但是當我使用腳本
var request, response;
var newUrl = url + '/thermometer/getLastHourData';
var data = $.ajax({
url: newUrl,
data: request,
dataType: "json",
method: "post",
success: function(data) {
drawGraph();
return data;
},
error: function() {
alert('Error occured');
}
});
還有drawGraph函數是
google.load("visualization", "1");
// Set callback to run when API is loaded
google.setOnLoadCallback(drawVisualization);
// Called when the Visualization API is loaded.
function drawVisualization() {
// Create and populate a data table.
var data = new google.visualization.DataTable();
data.addColumn('datetime', 'time');
data.addColumn('number', 'Function A');
data.addColumn('number', 'Function B');
function functionA(x) {
return Math.sin(x / 25) * Math.cos(x / 25) * 50 + (Math.random()-0.5) * 10;
}
function functionB(x) {
return Math.sin(x / 50) *50 + Math.cos(x / 7) * 75 + (Math.random()-0.5) * 20 + 20;
}
// create data
var d = new Date(2010, 9, 23, 20, 0, 0);
for (var i = 0; i < 100; i++) {
data.addRow([new Date(d), functionA(i), functionB(i)]);
d.setMinutes(d.getMinutes() + 1);
}
// specify options
var options = {
"width": "100%",
"height": "350px"
};
// Instantiate our graph object.
var graph = new links.Graph(document.getElementById('mygraph'));
// Draw our graph with the created data and options
graph.draw(data, options);
}
(由於檢查代碼是否正常運行,我沒有更改所需的內容)
drawGraph開始等待為某些庫加載google.com,但是當我使用drawGraph函數而不從ajax函數調用時,它的工作方式與我在開頭提到的鏈接相同。
如何從ajax調用此圖函數而不會出現問題?
我不清楚您的問題在這里。 但是,如果您對ajax的異步屬性有疑問,只需像這樣修改ajax調用即可:
$.ajax({
url: newUrl,
data: request,
async: false,
etc, etc, etc
希望這可以幫助。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.