Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [javascript] Zasięgi zmiennych
sunneku
post
Post #1





Grupa: Zarejestrowani
Postów: 19
Pomógł: 0
Dołączył: 29.05.2008

Ostrzeżenie: (0%)
-----


Witam

Mam problem. Piszę mianowicie skrypt javascript.
Mam w nim między innymi

  1. var wordsSearch = new Array();
  2.  
  3. var api = ( {
  4. getWords : function() {
  5. WebApi.managerCallback(this.WebApiUrl,'getWords','');}
  6. });
  7.  
  8. var WebApi = ( {
  9.  
  10. managerCallback : function(_host,_method,_param) {
  11. var script = document.createElement('script');
  12. script.type = 'text/javascript';
  13. script.src = _host + '?callback=WebApi.' + _method + _param;
  14. $('body').append(script);
  15. },
  16.  
  17. getWords : function(_data) {
  18. if (_data.error != 0) {
  19. console.log("error!");
  20. return;
  21. }
  22.  
  23. for (key in _data.result) {
  24. console.log(key +'=='+_data.result[key]);
  25. wordsSearch[key] = _data.result[key];
  26. }
  27.  
  28. }
  29. });


Alert i firebug potwierdza że otrzymuje dane poprawne i że są one wpisywane do wordsSearch[key]

W dalszej części skryptu mam coś takiego:
  1. $(document).ready(function() {
  2. api.getWords(); //firebug dobrze odnotowuje pobrane słowa
  3. alert(wordsSearch[0]); //undefined
  4. })


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ę.
Go to the top of the page
+Quote Post

Posty w temacie


Reply to this topicStart new topic
2 Użytkowników czyta ten temat (2 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 24.08.2025 - 03:58