Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: Ajax + PHP - w FF, CH - ok, w IE kiszka
Forum PHP.pl > Forum > XML, AJAX > AJAX
limahlowski
Mam taki kod:
  1. .
  2. .
  3. <script type="text/javascript">
  4. if (window.XMLHttpRequest)
  5. {
  6. ObiektXMLHttp = new XMLHttpRequest();
  7. }
  8. else if (window.ActiveXObject)
  9. {
  10. ObiektXMLHttp = new ActiveXObject("Microsoft.XMLHTTP");
  11. }
  12.  
  13. function getData(zrodlo, cel) {
  14. if(ObiektXMLHttp)
  15. {
  16. var cel = document.getElementById(cel);
  17. ObiektXMLHttp.open("GET", zrodlo);
  18.  
  19.  
  20. ObiektXMLHttp.onreadystatechange = function()
  21. {
  22. if (ObiektXMLHttp.readyState == 4)
  23. {
  24. cel.innerHTML = ObiektXMLHttp.responseText;
  25. }
  26. }
  27.  
  28. ObiektXMLHttp.send(null); } }
  29.  
  30. </script>
  31. .
  32. .
  33. .
  34. .
  35. .
  36. <select onmousemove="getData(\'wybierz.php\', \'div2\')" name="wybor" id="div2">
  37. <option value="no" selected>wybierz</option>
  38. .
  39. .
  40. </form>
  41. .
  42. .
  43. </html>


kod wybierz.php:
  1. <?php
  2. header('Content-type: text/html; charset=utf-8');
  3. $connect = mysql_connect ("host","user","pass")
  4. or die ("brak polaczenia z baza");
  5. mysql_select_db("baza");
  6. $query = "SELECT * FROM costam ORDER BY costamcostam";
  7. $result = mysql_query($query);
  8. echo '<option value="no" selected>wybierz</option>';
  9. while($r = mysql_fetch_array($result)) {
  10. echo '<option value="'.$r['id'].'">'.$r['nazwa'].', '.$r['nazwa_2'].'</option>';
  11. }
  12.  
  13. ?>


i to dziala w FF, CH, ba nawet w Maxthonie tzn pokazuje <option> w pliku html poprzez ajaxa, ale za cholere nie moge zmusic IE do wyswietlenia tego, zadnego bledu, poprostu pusty select. Wyglada na to jak by nie wykonywal kodu php.
Jest moze jakis sposob na tego cholernego IE zmusic do wyswietlenia tego ?
Moze gdzies robie jakis blad ?
Z Ajaxem to moje pierwsze podrygi...
Pozdrawiam.
Shili
IE prawdopodobnie nie rozumie innerHTML na elemencie select.

http://support.microsoft.com/kb/276228
http://elmicoxcodes.blogspot.com/2007/02/i...tion-in-ie.html

Radziłabym skorzystanie z jakiejś biblioteki (np. jQuery). Biblioteki radzą sobie nader często z różnymi przeglądarkami same.
limahlowski
Problem rozwiazany poprzez jQuery. THX Shili za podpowiedz.
Moze komus sie przyda:
  1. .
  2. .
  3. <script src="http://code.jquery.com/jquery-latest.js"></script>
  4. $(".class").live("mouseover", function(){
  5.  
  6. $("#wybor").load('wybierz.php');
  7.  
  8. });
  9. .
  10. .
  11. <select class="class" id="wybor">
  12. <option value="no" selected>wybierz</option>
  13. .
  14. .


Reszta jak wczesniej oczywiscie oprocz <script></script> Ajaxa.
Dziala w IE, FF itp.
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.