Mam problem. Piszę mianowicie skrypt javascript.
Mam w nim między innymi
var api = ( { getWords : function() { WebApi.managerCallback(this.WebApiUrl,'getWords','');} }); var WebApi = ( { managerCallback : function(_host,_method,_param) { var script = document.createElement('script'); script.type = 'text/javascript'; script.src = _host + '?callback=WebApi.' + _method + _param; $('body').append(script); }, getWords : function(_data) { if (_data.error != 0) { console.log("error!"); return; } } } });
Alert i firebug potwierdza że otrzymuje dane poprawne i że są one wpisywane do wordsSearch[key]
W dalszej części skryptu mam coś takiego:
$(document).ready(function() { api.getWords(); //firebug dobrze odnotowuje pobrane słowa alert(wordsSearch[0]); //undefined })
Ale sam alert jest undefined. Jak tutaj skorygować sprawę?
Wg mnie wordsSearch jest zmienną globalną, inicjujemy jako pustą tablicę. W wyniku wywołania api.getWords wywołuję WebApi.getWords i modyfikuję w tej funkcji zmienną wordsSearch. Ale modyfikuję to jakby w sposób lokalny a nie w sposób globalny.
Proszę o pomoc. Za wszelką pomoc z góry dziekuję.