Avatar billede cmau Nybegynder
05. januar 2007 - 21:20 Der er 9 kommentarer og
1 løsning

variabel indeholder funktionens navn, hvordan kan jeg afspille de

Hejsa Eksperter

Jeg har en variabel som hedder func, den indeholder navnet på en tilfældig funktion, hvordan kan jeg afspille den?

Jeg har pørvet følgende unden held:

function connect(func) {
  func();
}
Avatar billede simplus Nybegynder
05. januar 2007 - 21:38 #1
Du må lige uddybe hvad du vil, fordi de 3 linier virker som forventet ikke :-)

Du kan prøve f.eks.


function displaymessage() {
    alert("Hello World!")
}

displaymessage();
Avatar billede simplus Nybegynder
05. januar 2007 - 21:42 #2
er ikke sikker på at jeg har forstået det ordenligt, men i mine øjne burde enten mit første virke ellers så prøver du at kører en variabel i en funktion.

hvis sidstnævnte er tilfældet så er det fordi du udskriver den forkert. En variabel udskrives ikke med (); bagpå. Det er kun funktioner.
Avatar billede plx Nybegynder
05. januar 2007 - 21:46 #3
function test(){
    alert("test");
}

function connect(func) {
  eval(func)();
}

connect("test");
Avatar billede cmau Nybegynder
05. januar 2007 - 21:47 #4
ALtså det fordi connect skal kunne stare en valgfri funktion.

function connect(func) {
  func();
}

connect("test();");

function test() {
alert("adsf");
}

.. og ja, der er en mening med at det skal være sådan der og jeg ikke bare udksriver test(); i connect.
Avatar billede cmau Nybegynder
05. januar 2007 - 21:52 #5
plx, hvorfor virker det ikke??

            function change(file, variabel, func, way) {
                xmlHttp = GetXmlHttpObject();
                if (xmlHttp == null) {
                    alert ("Du kan desværre ikke bruge kommentar systemet, fordi din browser ikke understøttet 'HTTP Request'.");
                    return;
                }
                var url = file + variabel;
                xmlHttp.onreadystatechange = stateChanged(func);
                xmlHttp.open(way, url, true);
                xmlHttp.send(null);
            }
            function stateChanged(func) {
                if (xmlHttp.readyState == 4 || xmlHttp.readyState == 'complete') {
                    eval(func)();
                }
            }
            function GetXmlHttpObject() {
                var objXMLHttp = null;
                if (window.XMLHttpRequest) {
                    objXMLHttp = new XMLHttpRequest();
                } else if (window.ActiveXObject) {
                    objXMLHttp = new ActiveXObject("Microsoft.XMLHTTP");
                }
                return objXMLHttp;
            }
            function vitester() {
                alert("asdasdasd sad asd s");
            }
            connect('test.php','?asd=asfdggrd','vitester();', 'GET');
Avatar billede cpufan Juniormester
05. januar 2007 - 23:27 #6
connect('test.php','?asd=asfdggrd','vitester', 'GET');


i guess
Avatar billede cmau Nybegynder
06. januar 2007 - 17:57 #7
Det dur stadigvæk ikke, tror fejlen ligger i:
            function stateChanged(func) {
                if(xmlHttp.readyState == 4 || xmlHttp.readyState == 'complete') {
                    eval(func)();
                }
            }
Avatar billede cmau Nybegynder
11. januar 2007 - 14:05 #8
lavede det selv plx smid svar for at svare på spørgsmålet.
Avatar billede roenving Novice
21. januar 2007 - 12:03 #9
Tid til at lukke ?-)
Avatar billede cmau Nybegynder
25. marts 2007 - 16:54 #10
Ja må det være
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
Vi tilbyder markedets bedste kurser inden for webudvikling

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