Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [JS] Funkcja w funkcji
Puszy
post
Post #1





Grupa: Zarejestrowani
Postów: 279
Pomógł: 42
Dołączył: 10.10.2011

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


Witam, tworzę kilka prostych funkcji do obsługi AJAX i mam problem który wiąże się z samym JavaScriptem. Otóż chciałbym przekazać funkcję do funkcji tak aby wywoływała się w funkcji, bez sensu napisane więc wytłumaczę na przykładzie:

tworzę obiekt XHR
Kod
var karmian    =    new XMLHttpRequest();


oraz funkcję do wysłania zapytania
Kod
function karmian_send_get(URL, GET_STRING){
    karmian.open('GET', URL+'?'+GET_STRING);
    karmian.onreadystatechange    =    karmian_receive_get;
    karmian.send(null);
}


problemem jest to że chciałbym aby fragment:
Kod
karmian.onreadystatechange    =    karmian_receive_get;

był dynamiczny(?)

Chcę dodać do funkcji karmian_send_get(); parametr którym będzie nazwa funkcji którą chciałbym wywoływać.

coś na zasadzie:
Kod
function karmian_send_get(URL, GET_STRING, FUNKCJA_DO_WYWOLANIA){
    karmian.open('GET', URL+'?'+GET_STRING);
    karmian.onreadystatechange    =    FUNKCJA_DO_WYWOLANIA;
    karmian.send(null);
}


analogicznie mógłbym wykonać kilka różnych wywołań tej samej funkcji:
Kod
karmian_send_get('http://localhost/a.php', 'a=1', wyswietl_w_div());
karmian_send_get('http://localhost/a.php', 'a=1', alert());
karmian_send_get('http://localhost/a.php', 'a=1', inna_funkcja());


Z góry dziękuję za pomoc. Pozdrawiam.
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
Crozin
post
Post #2





Grupa: Zarejestrowani
Postów: 6 476
Pomógł: 1306
Dołączył: 6.08.2006
Skąd: Kraków

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


No to samą funkcję masz już dobrze napisaną, jedynie w użyciu powinno być ....'a=1', wyświetl_w_div); (zauważ brak nawiasów po nazwie funkcji).
Go to the top of the page
+Quote Post
Puszy
post
Post #3





Grupa: Zarejestrowani
Postów: 279
Pomógł: 42
Dołączył: 10.10.2011

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


Cytat(Crozin @ 11.05.2012, 12:43:59 ) *
No to samą funkcję masz już dobrze napisaną, jedynie w użyciu powinno być ....'a=1', wyświetl_w_div); (zauważ brak nawiasów po nazwie funkcji).


ale będę chciał też przesyłać parametry, napiszę to troszkę inaczej:

Kod
var karmian    =    new XMLHttpRequest();

function glowna(parametr_1, funkcja_do_wywolania){
    karmian.open('GET', parametr_1);
    
    karmian.onReadystatechange    =    funkcja_do_wywolania;
    
    karmian.send(null);    
}


function wpisz_w_div(div_id){
    document.getElementById(div_id).innerHTML    =    'Lorem...';
}

function zmien_klase(div_id){
    document.getElementById(div_id).setAttribute('class', 'red');
}



wywołuje to tak:
Kod
glowna('http://localhost/plik.php', wpisz_w_div('div_numer_18'));
glowna('http://localhost/plik.php', zmien_klase('div_numer_89'));


tak miałoby to wyglądać
Go to the top of the page
+Quote Post

Posty w temacie


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

 



RSS Aktualny czas: 15.10.2025 - 14:05