Problem z językiem

Wszystko związane ze skryptami JS, DHTML itd.
zenon13
Posty: 14
Rejestracja: 23 lut 2010, 14:06:27
Płeć: Niewybrana
User Agent: Firefox Windows 1680x1050

Problem z językiem

Post autor: zenon13 »

Witam
Przypisuję linkom zdarzenia onclick

Kod: Zaznacz cały

    var allLinks=document.getElementsByTagName("a");
        for(var i=0;i<allLinks.length;i++){
            if(allLinks[i].className.indexOf("subPage")>-1) allLinks[i].onclick=loadPage;
        }
 
Następnie wyciągam nazwę pliku, który ma być załadowany

Kod: Zaznacz cały

function loadPage(evt){
    var thisDiv=(evt) ? evt.target : window.event.srcElement;
    debugger;
    var starMenu=thisDiv.href.lastIndexOf("/")+1;
    var stopMenu=thisDiv.href.lastIndexOf(".");
    var pageName=thisDiv.href.substring(starMenu,stopMenu);
    //makePHP(pageName+".html",null,pageName);
    makePHP(pageName+".html",null,editInsertLoc);
    return false;
} 
I tu pojawia się problem - parametry w funkcji makePHP (tej w komentarzu) powodują błąd - to co jest bez komentarza działa poprawnie
pageName w tym wypadku zawiera ciąg ediInsertLoc
A funkcja wygląda tak

Kod: Zaznacz cały

function makePHP(url,message,readFunction){
    xmlHttp = null;
    xmlHttp = createXmlHttpRequestObject();
    if (xmlHttp) {
            xmlHttp.open("POST", url);
            xmlHttp.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
            if(message)    xmlHttp.setRequestHeader("Content-length", message.length);
            xmlHttp.setRequestHeader("Connection", "close");
            xmlHttp.onreadystatechange = readFunction;
            xmlHttp.send(message);
    } 
}  
Bład pojawia się w linii xmlHttp.onreadystatechange = readFunction;
Błąd: uncaught exception: [Exception... "Could not convert JavaScript argument arg 0 [nsIXMLHttpRequest.onreadystatechange]" nsresult: "0x80570009 (NS_ERROR_XPC_BAD_CONVERT_JS)" location: "JS frame :: http://localhost/mjs/loaad.js :: makePHP :: line 17" data: no]
Jak poprawnie przekazać do makePHP parametr readFunction jako zmienną
Czy problem polega na tym,że w momencie kompilacji nie jest określona nazwa funkcji? A jeśli tak to jak to obejść
Z góry dzięki za pomoc
ODPOWIEDZ