Drukowana wersja tematu

Kliknij tu, aby zobaczyć temat w orginalnym formacie

Forum PHP.pl _ AJAX _ [advAjax] blad pod IE

Napisany przez: MalCom 22.07.2006, 18:12:18

Witam,

Mam maly problem pod IE...
Tzn wszystko dzialalo do czasu.. dopoki nie dodwalem kolejnych funkcji w js... od tego czasu zawsze wypluwa ten sam blad: "obiekt nie obsluguje tej wlasciwosci lub metody" gdy chce wywolac jakas funckej w ktorej ciele znajduje sie odwolanie do advAJAXa.

Wywalilem prawie caly kod i dalej to samo sad.gif

  1. function $(id) {
  2. return document.getElementById(id);
  3. }
  4.  
  5. // tab index dol //
  6. var stab_id = 2;
  7. var stab = new Array();
  8.  
  9. function qqq(a) {
  10.  
  11. if (stab[a] == undefined) {
  12. // stab[a] = loading;
  13. advAJAX.get({
  14. url: 'http://localhost',
  15. mode: a,
  16. onSuccess : function(obj) {
  17. stab[a] = obj.responseText;
  18. $('stab').innerHTML = stab[a];
  19. },
  20. onError : function(obj) {
  21. $('stab').innerHTML = 'Error: ' + obj.status;
  22. }
  23. });
  24. }
  25.  
  26. }


i html:
  1. <http://december.com/html/4/element/div.html id="astab">
  2. <http://december.com/html/4/element/p.html class="akt" id="astab1" onclick="qqq(1)">ddsadsad</http://december.com/html/4/element/p.html>
  3. </http://december.com/html/4/element/div.html>
  4.  
  5. <http://december.com/html/4/element/div.html id="stab">
  6. aa
  7. </http://december.com/html/4/element/div.html>

Gdy klikne w akapit IE poczestuje bledem js...
Robilem rozne testy, wywalalem zbedne kody, i gdy tylko wywle fragmnet z advAJAXem to bledu juz IE nie pokazuje...

Dodam jeszce tyle ze wzystko dzialalo i nagle sie zje...alo :/

EDIT:
Chyba znalazlem rozwiania/blad.
W HTMLu znajdowal sie ejszce div z id="a", nie wiem czemu i z jakiego powodu, ale gdy zmienilem ten identyfikator na inny to blad juz nie wyskakuje :|
Dziwna sprawa, dlaczego to sie "gryzlo" pod IE i sprawialo problemy.

Napisany przez: mount 16.01.2011, 00:10:01

odświeżam, i ponawiam ten problem pod IE


podczas wykonywania skryptu

  1. function praca(stan) {
  2.  
  3. $('#szukampracy').fadeOut('fast');
  4. advAJAX.post({
  5. url : "_profil_praca.php",
  6. parameters : {
  7. "stan" : stan
  8. },
  9.  
  10. onSuccess : function(obj) {
  11. document.getElementById("szukampracy").innerHTML = obj.responseText;
  12. $('#szukampracy').fadeIn('fast');
  13. }
  14. });
  15. }


wyskakuje komunikat:

  1. Szczegóły błędu na stronie sieci Web
  2.  
  3. Agent użytkownika: Mozilla/4.0 (compatible; MSIE 8.0; Windows NT 6.1; WOW64; Trident/4.0; SLCC2; .NET CLR 2.0.50727; .NET CLR 3.5.30729; .NET CLR 3.0.30729; Media Center PC 6.0; .NET4.0C)
  4. Sygnatura czasowa: Sun, 16 Jan 2011 00:02:58 UTC
  5.  
  6.  
  7. Wiadomość: Obiekt nie obsługuje tej właściwości lub metody.
  8. Wiersz: 112
  9. Znak: 13
  10. Kod: 0
  11. Identyfikator URI: js/advajax.js
  12.  


gdzie wiersz 112 to return new XMLHttpRequest();

  1. if (typeof XMLHttpRequest != 'undefined')
  2. return new XMLHttpRequest();
  3. var xhr = [ 'MSXML2.XMLHttp.6.0', 'MSXML2.XMLHttp.5.0', 'MSXML2.XMLHttp.4.0', 'MSXML2.XMLHttp.3.0',
  4. 'MSXML2.XMLHttp', 'Microsoft.XMLHttp' ];
  5. for (var i = 0; i < xhr.length; i++) {
  6. try {
  7. var xhrObj = new ActiveXObject(xhr[i]);
  8. return xhrObj;
  9. } catch (e) {
  10. }
  11. ;
  12. }




co dziwnego, skrypt jest wykonywany po odświeżeniu strony - wystarczy odświeżyć i wykonać ponownie funkcję i a całość zostanie poprawnie wykonana...

naturalnie pod FF, Operą, Chrome i Safari wszystko śmiga jak należy, ale oczywiście IE sypie błędami
macie jakieś pomysły?

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)