Ajax fv nem fut egy másik fv-ben hiba Mozilla
2009-06-02T00:03:37+02:00
2009-06-02T18:19:13+02:00
2022-08-13T04:41:23+02:00
haszim
Sziasztok!

Most ismerkedem az Ajax -al és hát egy olyan problémám adódott amire a választ sehogy sem tudom megtalálni!

Adott egy Ajax fájl amivel külső fájlokat töltök be DIV-be. Ez addig rendben is van amíg onClick eseményen hívom meg a függvényt, de ha egy függvényen belül hívom meg ezt a függvényt akkor probléma van.
Mozillába, gyors bevágja, hogy nincs a forrás fájl majd eltűnik a DIV. IE6-ba pedig szépen megjelenik.

Link
Itt az alany oldal

ajax_navigator.js

var please_wait = null; function open_url(url, target,divCode) { if ( ! document.getElementById) { return false; } //Div azonosítása //Div kód..... ////////////////////////////////////////// if (please_wait != null) { document.getElementById(target).innerHTML = please_wait; } if (window.ActiveXObject) { link = new ActiveXObject("Microsoft.XMLHTTP"); } else if (window.XMLHttpRequest) { link = new XMLHttpRequest(); } if (link == undefined) { return false; } link.onreadystatechange = function() { response(url, target); } link.open("GET", url, true); link.send(null); } function response(url, target) { if (link.readyState == 4) { document.getElementById(target).innerHTML = (link.status == 200) ? link.responseText : "Ooops!! A broken link! Please contact the webmaster of this website ASAP and give him the fallowing errorcode: " + link.status; } } function set_loading_message(msg) { please_wait = msg; }


Itt kéne lefutnia még egyszer!
function endEll(){ ... ... for(var i=0; i<=3; i++){ if(hiba[i] == false) x = false } if(x == false){ uzenetDiv = uzenetDiv + '<br />' uzenetDiv = uzenetDiv + '<div align="center">' uzenetDiv = uzenetDiv + '<input type="button" id="uzenetG" class="AAA_submit_out" value="Vissza"' uzenetDiv = uzenetDiv + ' onmouseover="submitOver(3)" onmouseout="submitOver(4)" onclick="open_url(\'safe/reg_div_1.php\',\'muvelet\',2);" />' uzenetDiv = uzenetDiv + '</div>' document.getElementById('muvelet').innerHTML = uzenetDiv document.getElementById('muvelet').className = 'uzenet' document.getElementById('muvelet').style.width = '500px' document.getElementById('muvelet').style.marginLeft = '-250px' document.getElementById('muvelet').style.height = uzenetHeight + 'px' document.getElementById('muvelet').style.marginTop = '-' + uzenetHeight/2 + 'px' } else { open_url('../pages/safe/szabalyzat_div.php','muvelet',2) document.getElementById('muvelet').style.width = '500px' } }


Működése úgy van, ha a regisztrációnál ez a fv nem talál hibát akkor az else ágban lefutna a

open_url('../pages/safe/szabalyzat_div.php','muvelet',2)


Előre is köszönöm a válaszokat!
Mutasd a teljes hozzászólást!
Köszönöm a választ!

Meg lett a fő probléma! Mivel most kezdtem JS-t nem voltam tisztába azzal, hogy mikor kell Headbe vagy Body-ba tenni a dolgokat!

És azért zavarodott össze, mert az ajax_navigator.js nem volt a Head-be.
Mutasd a teljes hozzászólást!

  • Előszöris rakd az open után az onreadystatechange megadását.
    setRequestHeadert 100%, hogy utána kell rakni, orc-ben nem vagyok biztos, de jobb, ha utána van.

    Én más hibát nem látok benne.
    (egyébként a set_loading_message rossz helyen van a forrásban)
    Mutasd a teljes hozzászólást!

  • xmlhttp.onreadystatechange = open_url('../pages/safe/szabalyzat_div.php','muvelet',2)

    Így egyszer működött, de csak 1-szer nem értem miért pedig ilyen változót nem hoztam létre csak link-et
    Forrás

    Az ajax kód innen van nem én írtam

    inf3rno tudnál erre egy példát írni?
    Szerintem utána menne már.

    Próbáltam az eredeti kóddal összevariálni, de nem ment

    link.onreadystatechange = function() { response(url, target); } link.open("GET", url, true); link.send(null);

    Köszönöm!
    Mutasd a teljes hozzászólást!
  • Köszönöm a választ!

    Meg lett a fő probléma! Mivel most kezdtem JS-t nem voltam tisztába azzal, hogy mikor kell Headbe vagy Body-ba tenni a dolgokat!

    És azért zavarodott össze, mert az ajax_navigator.js nem volt a Head-be.
    Mutasd a teljes hozzászólást!
  • Jah hát írtam, hogy 1-2 dolog rossz helyen van a forrásban.
    Mutasd a teljes hozzászólást!
abcd