![]() |
![]() |
![]()
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. |
|
|
![]() |
![]()
Post
#2
|
|
Grupa: Zarejestrowani Postów: 279 Pomógł: 42 Dołączył: 10.10.2011 Ostrzeżenie: (0%) ![]() ![]() |
Dzięki wielkie, wszystko działa jak należy. Wygląda nie za dobrze ale dorzucę jQuery i będzie ok.
gotowy działający kod: Kod <html> <head> <script type="text/javascript"> var karmian = new XMLHttpRequest(); function karmian_send_get(URL, GET_STRING, FUNCTION_TO_EXECUTE){ karmian.open('GET', URL+'?'+GET_STRING); karmian.onreadystatechange = FUNCTION_TO_EXECUTE; karmian.send(null); } function karmian_receive_get_1(){ if(karmian.readyState == 4){ document.getElementById('cont1').innerHTML = karmian.responseText; } } function karmian_receive_get_2(){ if(karmian.readyState == 4){ document.getElementById('cont2').innerHTML = karmian.responseText; } } </script> </head> <body> <div id="box"> <input type="button" value="test1" id="but1" onClick="karmian_send_get('http://localhost/workspace/WebService/ajax.php', 'a=133&b=test1', function(){karmian_receive_get_1();});" /> <input type="button" value="test2" id="but2" onClick="karmian_send_get('http://localhost/workspace/WebService/ajax.php', 'a=515&b=test2', function(){karmian_receive_get_2();});" /> <br /> <div id="cont1"></div> <br /> <div id="cont2"></div> </div> </body> </html> i plik php:
|
|
|
![]() ![]() |
![]() |
Aktualny czas: 13.10.2025 - 15:09 |