Avatar billede eikhorsholm Nybegynder
05. maj 2008 - 15:19 Der er 3 kommentarer

Variabel i array ændrer sig ikke.

Jeg har følgende kode:

function loadXML(success) {
    if (success == true) {
        for (var i = 0; i<menuXML.firstChild.childNodes.length; i++) {
            var newName = menuXML.firstChild.childNodes[i].attributes.id;
            var item = _root.attachMovie("MenuItem", newName, i);
            item._visible = false;
            item._x = 75;
            item._y = 40+(15*i);
            item.Title.text = menuXML.firstChild.childNodes[i].attributes.title;
            var url = "staff.php?category="+newName;
            item.onRelease = function() {
                getURL(url);
            };
            menuArray.push(item);
            menuHeight += 15;
        }
    }
}

Jeg bruger den til at lave en menu fra et XML-dokument. Det hele fungerer fint pånær at URL i funktionen til når man klikker på knapperne er den samme på samtlige knapper. Det er som om newName ikke ændrer sig. Jeg har prøvet med trace at udskrive værdien og den ændrer sig fint, men knapperne har desværre alligevel den samme værdi.
Avatar billede andersbro Nybegynder
05. maj 2008 - 15:23 #1
Det er fordi, det er den samme url-værdi, du hele tiden refererer til. Prøv at lægge url'en på selve movieclip'et i stedet:
item.url = "staff.php?category="+newName;
item.onRelease = function() {
    getURL(this.url);
};
Avatar billede eikhorsholm Nybegynder
05. maj 2008 - 15:53 #2
Mange tak :-) et lille svar?
Avatar billede andersbro Nybegynder
05. maj 2008 - 21:04 #3
Det var så lidt
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
IT-kurser om Microsoft 365, sikkerhed, personlig vækst, udvikling, digital markedsføring, grafisk design, SAP og forretningsanalyse.

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester