Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [ajax] Co jest z IE.
Forum PHP.pl > Forum > XML, AJAX > AJAX
gebp
mam
Funkcje.js
  1. function tocos() {
  2.  
  3. advAJAX.get({ url: "test1.php",
  4. onLoading : function(obj) { document.getElementById("divg").innerHTML = "Loading..."; },
  5. onSuccess : function(obj) { document.getElementById("divg").innerHTML = obj.responseText; }
  6. });
  7. advAJAX.get({ url: "test2.php",
  8. onLoading : function(obj) { document.getElementById("divd").innerHTML = "Loading..."; },
  9. onSuccess : function(obj) { document.getElementById("divd").innerHTML = obj.responseText; }
  10. });
  11. advAJAX.get({ url: "t1.html",
  12. onLoading : function(obj) { document.getElementById("con").innerHTML = "Loading..."; },
  13. onSuccess : function(obj) { document.getElementById("con").innerHTML = obj.responseText; }
  14.  
  15. });
  16.  
  17. }

plik index.html
  1. <meta http-equiv="Content-type" content="text/html; charset=ISO-8859-2" >
  2. <link rel="stylesheet" href="styl.css" type="text/css" />
  3. <script type="text/javascript" src="funkcje.js"></script>
  4. <script type="text/javascript" src="advajax.js"></script>
  5.  
  6. </head>
  7. <body>
  8. <div id="divg">
  9. <button onclick="tocos()">Pobierz </button>
  10. </div>
  11.  
  12. <div id="divd">
  13. test
  14. </div>
  15. <div id="con">
  16. test2
  17. </div>

Nie bardzo kumam czego pod FF działa bez zarzutu a w IE nic nie robi. Niestety większość użytkowników aplikacji którą tworze będzie używać IE i problem bardzo mnie pali.
yaro
sprawdziłem Twój kod i jest ok pod IE6 i FF2 oraz Opera9.1

spróbuj:
Kod
advAJAX.setDefaultParameters({
    onSuccess : function(obj) {
    
        document.getElementById(obj.tag).innerHTML = obj.responseText;
    }
});
advAJAX.get({ tag: "layer1", url: "http://www.example.com/page1.html" });
advAJAX.get({ tag: "layer2", url: "http://www.example.com/page2.html" });
advAJAX.get({ tag: "layer3", url: "http://www.example.com/page3.html" });


zaglądnij na: http://advajax.anakin.us/index-pl.htm
gebp
Dzięki yaro za sprawdzenie.

Tak myślałem że to mój IE. Kiedyś (to było ja zacząłem Phoenixa (na nim powstał FF)) złamałem kręgosłup mojemu IE. Jak widać nie wydobrzał do dziś. Ale kurcze będę musiał coś zrobić bo jak tu testować questionmark.gif?
yaro
Fajna instalka od ie3-6 http://tredosoft.com/Multiple_IE
gebp
Sprawdziłem jeszcze raz (w pracy) i dalej mam błąd. Dotyczy to tego pliku:

  1. <?php
  2. if ( ($_SESSION['aut']!=34) OR (empty($_SESSION['IDK'])) )
  3. {header('location:index.php');}
  4. echo("<head>
  5.  <meta http-equiv=Content-type content=text/html; charset=utf-8 >");
  6.  if($p=="")
  7. {echo("<link rel="stylesheet" type="text/css" href="style/stylff.css" />");} //przeglądarka Mozzila
  8. else 
  9. {echo("<link rel=stylesheet href=style/stylie.css type=text/css />");} // IE
  10.  <script type="text/javascript" src="java/advajax.js"></script>
  11.  <script type="text/javascript" src="java/funkcje.js"></script>
  12. </head>
  13. <body OnLoad="load();">
  14. <html>
  15. <div id="gora">
  16. </div>
  17. <div id="link">
  18. </div>
  19. <div id="main">
  20. </div>
  21. </body></html>");
  22. ?>


plik funkcje.js
  1. function loaddo(fo,div)
  2. { advAJAX.assign(document.getElementById(fo),
  3. { disableForm : true,
  4. onLoading : function(obj) { document.getElementById(div).innerHTML = "ładuje";},
  5. onSuccess : function(obj) { document.getElementById(div).innerHTML = obj.responseText;},
  6.  
  7. });
  8.  
  9. }
  10.  
  11. function load() {
  12. advAJAX.setDefaultParameters({
  13. onSuccess : function(obj) {
  14. document.getElementById(obj.tag).innerHTML = obj.responseText;
  15. }
  16. });
  17. advAJAX.get({ tag: "gora", url: "gora.php" });
  18. advAJAX.get({ tag: "link", url: "linki.php" });
  19. advAJAX.get({ tag: "main", url: "main.php" });
  20.  
  21. }


FF bez problemu. IE wywala mi błąd (java scrip, że nie może poprawnie wyświetlić strony itd.):
Wiersz: 6
Znak: 1
Błąd: Oczekiwano obiektu
Kod: 0
Adres URL:http://www.***.pl/index2.php

Ale namieszałem.

ZWRACAM HONOR yaro. To co podałem na samej górze jak najbardziej działa. Jeżeli jednak w pliku funkcje.js (ładowany w listingu w lini 14) znajdzie się jeszcze jedna funkcja ( jak naprzykład loaddo() ) to tak jak pisałem sypie się pod IE. FF jest wporzo.
Może ktoś pomoże co jest nie tak.
atomek4
Witaj!

Miałem podobny problem, gdy pisałem prostą aplikację. Otóż AJAX miał odbierać kod html wygenerowany przez skrypt php. Działało we wszystkich przeglądarkach oprócz IE. Problem podobny do twojego IE krzyczał poszukiwano obiektu. Błąd leżał w obsłudze response.Text w IE z moich obserwacji wynika, że on nie wywala błędu jeśli dostaje tylko i wyłącznie czysty text.(bez znaczników)
Jak to sprawdzić wszystko co ma wychodzić ze skryptu php podać do funkcji htmlentities();. IE powinien przestać zgłaszać błąd. Ale to nie rozwiązuje problemu sad.gif

Jakby ktoś znalazł jakieś sensowne rozwiązanie tego problemu to byłbym dźwięczny smile.gif Oczywiście poza generowaniem XML-a przez skrypt php.
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.