NS_ERROR_NOT_AVAILABLE: Код возврата компонента: 0x80040111 (NS_ERROR_NOT_AVAILABLE) [nsIDOMWindow.alert]

Я вызываю переменную javascript внутри функции автозаполнения и создаю url в ajax из значения текстового поля, но он показывается неопределенным.

function fetchRecords()
{ var searchStr=$("#tags").val(); var finalLink=urlformjavascriptvariable; $.ajax({ url:finalLink, type: 'GET', dataType :'jsonp', async: false, crossDomain:true, success: function(data) { var resp = data.response; var availableTags = "["; for (i = 0; i <= 10; i++) { if(resp.messages.message[i].subject.$ != undefined) var postSub = resp.messages.message[i].subject.$; if (i < 10) { availableTags +="\"" +postSub + "\","; } else { availableTags +="\""+ postSub+"\""; }
}
availableTags += "]";
availableTags=eval(availableTags); $("#tags").autocomplete({ source: availableTags, }); }
});
}

Он показывает переменные неопределенные

1 ответ

for (i = 0; i <= 10; i++) {

Это оскорбительная строка кода. Вызов ajax проходит мимо количества элементов в вашем списке.

Переключение одного и того же оператора в

for (i = 0; i < resp.messages.message.length; i++) {

разрешит проблему.

licensed under cc by-sa 3.0 with attribution.