Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [JS] XMLHttpRequest refresh strony
Forum PHP.pl > Forum > Po stronie przeglądarki > JavaScript
Resurrection
Witam Wykorzystuje XMLHttpRequest do komunikacji z PHP .Wysyłam informacje i otrzymuje odp. Po otrzymaniu odpowiedzi wpisuje odpowiedni tekst do diva .Jednak po wpisaniu tekstu strona się oświeża i tekst znika. Sprawdziłem kolejne kroki w firebugu . Odpowiedź zostaje wpisana poprawnie następny krok to zakończenie funkcji send i refresh bądź wykonanie strony dalej(przejście do kolejnych wierszy po wyjściu z funkcji) co daje taki sam efekt ponieważ w tym divie odpowiedź jest umieszczana dynamicznie a nie na sztywno. Jaka może być przyczyna?




Doszedłem do tego, że przyczyną nie jest XMLHttpRequest tylko dynamicznie stworzony przycisk który wywołuje funkcje w której wykorzystuje ten obiekt. Odpowiedź dochodzi, div się aktualizuje a przycisk po naciśnięciu odświeża strone.Ginie w tedy zawartość diva i sam przycisk.
W jaki sposób mogę z uniknąć tego efektu.
#luq
Udostępnij całość jakoś live inaczej trudniej będzie pomóc.
Może podpinasz akcje z wysyłaniem requesta pod element <a/> lub <input type="sumbit"/> ?
Resurrection
Zostawmy XmlHttpRequest już w spokoju bo tam nie ma problemu. Problem jest tu:
Tworzę dynamicznie diva z opisem i przycisk do którego podpinam słuchacza "click" nawet jak nie umieszcze żadnego kodu w funkcji obsługującej zdarzenie i nacisne przycisk to strona się odświeża i znika diva razem z przyciskiem. I gdzie jest pies pogrzebany?:-)
a obiekty dynamiczne tworzę tak:
Kod
var tOJS=JSON.parse(tabOneJS);
    for(var z=0;z<tOJS.length;z++)
    {
     var box=document.createElement('div');
     box.style.background='#00F';
     box.style.width='200px';
     box.style.height='30px';
     box.style.display='block';
     var bigBox=document.getElementById('bigBox');
     box.id=tOJS[z];
     bigBox.appendChild(box);
     box.innerHTML=tOJS[z];
     var deleteButton=document.createElement('button');
     deleteButton.setAttribute('name',tOJS[z]+'b');
     deleteButton.style.width='30px';
     deleteButton.style.height='30px';
     deleteButton.style.background='#FFF';
     deleteButton.addEventListener('click',deleteFile);//nawet po odłączeniu słuchacza jest to samo
     bigBox.appendChild(deleteButton);
    }
  }
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.