Функция javascript jquery, это как-то неправильно?Jquery

Программирование на jquery
Ответить
Anonymous
 Функция javascript jquery, это как-то неправильно?

Сообщение Anonymous »

Код: Выделить всё

function rebuildJSONObject(){
$.getJSON('services.json', function(data) {
//stof start
var input = data;
var output = { myservices: [] };
for (var key in input) {
if (input.hasOwnProperty(key)) {
for (var i = 0, hostsinfo = input[key].hostsinfo; i < hostsinfo.length; i++) {
output.myservices.push({
'nametag': key,
'hostidn': hostsinfo[i]['hostidn'],
'details': hostsinfo[i]['details'],
'currstatus': hostsinfo[i]['currstatus'],
'currstatusclass': hostsinfo[i]['currstatusclass']
});
}
}
}
//stof end
return output;
});
}
//setting it for use later in the script
var serviceJSONObject = rebuildJSONObject();
Я знаю, что все, что происходит в функции, работает правильно, потому что, если я применю ее к событию щелчка, она будет работать очаровательно. Однако я бы предпочел загрузить объект JSON в память один раз и после этого работать с ним на клиентской стороне, если он не будет сохранен. Однако моя проблема в том, что везде, где я вызываю serviceJSONObject, я получаю «неопределенную» ошибку.
Итак, как я делаю это неправильно и как бы мне определить такую ​​переменную на ранних этапах game, чтобы остальная часть скрипта могла использовать указанную переменную.

Подробнее здесь: https://stackoverflow.com/questions/771 ... ehow-wrong
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «Jquery»