Mam pewien problem otóż w jednej podstronie serwisu potrzebuję wywołać dwa zapytania ajaxowe - oba odpytujące ten sam plik php, ale każdy o inne dane. Niestety, gdy w kodzie mam dwa takie zapytania - działa tylko jedno z nich (to drugie), niezależnie od umiejscowienia wywołania funkcji w kodzie.
Oto kod js:
function noweZapytanie(url,funkcja,atrybut) { http_request = false; if(window.XMLHttpRequest) { http_request = new XMLHttpRequest(); if(http_request.overrideMimeType) { http_request.overrideMimeType('text/xml'); } } else if (window.ActiveXObject) { try { http_request = new ActiveXObject("Msxm12.XMLHTTP"); } catch (e) { try { http_request = new ActiveXObject("Microsoft.XMLHTTP"); } catch (e) {} } } if(!http_request) { alert('Poddaje sie :( Nie moge stworzyc instancji obiektu XMLHTTP'); return false; } if(funkcja == 'menuitems') { http_request.onreadystatechange = function() { responseMenuItems(http_request); }; http_request.open('POST', url, true); http_request.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded'); http_request.send('show=' + funkcja); } if(funkcja == 'menuadding') { http_request.onreadystatechange = function() { responseMenuAdding(http_request); }; http_request.open('POST', url, true); http_request.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded'); http_request.send('show=' + funkcja); } function responseMenuAdding(http_request) { if(http_request.readyState < 4) { document.getElementById('menuadd_cc').innerHTML = '<img src=gfx/ajax-loader2.gif style="margin-top:15px;">'; } if(http_request.readyState == 4) { alert('ok'); if(http_request.status == 200) { var odpowiedz = http_request.responseText; document.getElementById('menuadd_cc').innerHTML = odpowiedz; } else { alert(http_request.status); } } } function responseMenuItems(http_request) { if(http_request.readyState < 4) { document.getElementById('menuitems_cc').innerHTML = '<img src=gfx/ajax-loader2.gif style="margin-top:15px;">'; } if(http_request.readyState == 4) { if(http_request.status == 200) { var odpowiedz = http_request.responseText; document.getElementById('menuitems_cc').innerHTML = odpowiedz; } else { alert(http_request.status); } } }
A to obcięty ze zbędnych div'ów kod html'owy, w którym wywołuję zapytania:
Czy ktoś może pomóc i chociaż naprowadzić mnie dlaczego te funkcje nie mogą zadziałać obie naraz? Po stronie pliku menustron_ajaxresponse.php wszystko jest w porządku, sprawdzałem na setki sposobów
