考虑以下代码:
function drawCharts2() {
var jsonData2 = $.ajax({
url: "http://**.**.**.**:9001/jolokia/read/*",
dataType:"json",
async: false
}).responseText;
var parsed2 = JSON.parse(jsonData2);
以上网址在网络应用启动时不包含任何值。该网址中的数据将在2-3分钟后出现。
当我启动我的网络应用时。它给出了错误,但作为一种解决方法,我将页面刷新时间设置为30秒。因此,在30秒后表格成功生成。
我需要一种方法,即使url不包含任何数据,代码也不应该给出任何错误。它应该跳过整个代码。 我怎样才能做到这一点?
答案 0 :(得分:0)
试试这个
var parsed2;
function drawCharts2() {
$.ajax({
type: "GET",
url: "http://**.**.**.**:9001/jolokia/read/*",
contentType: "application/json; charset=utf-8",
dataType: "json",
success: function (response) {
if(response) {
parsed2 = response;
}
else
{ drawCharts2(); // retry if you want to.. }
},
error: function (event) {
alert("Transmission Failed. (An error has occurred)");
}
});
if( parsed2 != null)
{
var arr2 = []; for(var x in parsed2)
{ arr2.push(parsed2[x]);
}
var array_keys = new Array();
var array_values = new Array();
}
}