Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [PHP][AJAX]Problem pod IE
kl4mor
post 4.04.2011, 14:27:29
Post #1





Grupa: Zarejestrowani
Postów: 33
Pomógł: 0
Dołączył: 7.12.2008

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


Witam
Mam pewien problem z Ajaxem pod IE-shitem, nie działa tak jak potrzeba, tzn. za pierwszym razem się przeładuje ale jak chce przeładować jeszcze raz ten sam element to nie ma żadnej reakcji ze strony IE. Pod FF opera działa poprawnie

Funkcja ajaxa
  1. function StatusAjax(id)
  2. {
  3. $('#stat'+id).html('<img src="./images/preloader.gif" alt="loading" />');
  4. $.get('status_category,'+id+'.html', function(data) {
  5. $('#stat'+id).html(data);
  6. });
  7. }


fukncja phpa
  1. function StatusAJAX()
  2. {
  3. global $baza, $smarty;
  4.  
  5. if ($_GET['IDKategorii'])
  6. {
  7. $result[0] = $baza->query("SELECT StatusKategorii FROM `oferta_kategorie` WHERE `IDKategorii`='" . $_GET['IDKategorii'] . "'");
  8. $row[0] = $baza->fetch_assoc($result[0]);
  9. if ($row[0]['StatusKategorii'] == 1)
  10. {
  11. $baza->query("UPDATE `oferta_kategorie` SET `StatusKategorii`=0 WHERE `IDKategorii`='" . $_GET['IDKategorii'] . "'");
  12.  
  13. echo '<a href="#" title="Zmień status (pokaż)" onclick="StatusAjax1(\''.$_GET['IDKategorii'].'\'); return false;"><img src="images/no.png" alt="Niewidoczna" /></a>';
  14.  
  15. } else
  16. {
  17. $baza->query("UPDATE `oferta_kategorie` SET `StatusKategorii`=1 WHERE `IDKategorii`='" . $_GET['IDKategorii'] . "'");
  18.  
  19. echo '<a href="#" title="Zmień status (ukryj)" onclick="StatusAjax(\''.$_GET['IDKategorii'].'\'); return false;"><img src="images/yes.png" alt="Widoczna" /></a>';
  20. }
  21. }
  22. }


i kod html
  1. {foreach item=i key=k from=$KLista}
  2. ...
  3. <div class="left" id="stat{$i.IDKategorii}" style="width:25px">
  4. {if $i.StatusKategorii==1}
  5. <a href="#" title="Zmień status (ukryj)" onclick="StatusAjax('{$i.IDKategorii}'); return false;"><img src="images/yes.png" alt="Widoczna" /></a>
  6. {else}
  7. <a href="#" title="Zmień status (pokaż)" onclick="StatusAjax('{$i.IDKategorii}'); return false;"><img src="images/no.png" alt="Niewidoczna" /></a>
  8. {/if}
  9. </div>
  10. ...
  11. {/foreach}
  12.  


Problem rozwiązałem może się komuś jeszcze przyda, zmieniłem funkcje ajaxa do linku trzeba dokleić pseudolosową liczbę żeby za każdym razem IE widziało inny link
  1. function StatusAjax(id)
  2. {
  3. rand = Math.floor(Math.random()*9999);
  4.  
  5. $('#stat'+id).html('<img src="./images/preloader.gif" alt="loading" />');
  6. $.get('status_category,'+id+'.html?time='+rand, function(data) {
  7. $('#stat'+id).html(data);
  8. });
  9. }


działa pod IE 8 i 7

Ten post edytował kl4mor 5.04.2011, 09:02:34
Go to the top of the page
+Quote Post

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 Wersja Lo-Fi Aktualny czas: 25.07.2025 - 10:48