Avatar billede minau Nybegynder
13. november 2001 - 19:11 Der er 7 kommentarer og
1 løsning

window[...] problemer

Hvorfor vil den ikke virke?
<html>
<body>
<script>
var hvilke_0 = new Array();
hvilke_0[0] =new kombine(\'Select from the Home\', \'\')
hvilke_0[1] =new kombine(\'Home\', \'../index.htm\')


var hvilke_1 = new Array();
hvilke_1[0] =new kombine(\'Select from Products\', \'\')
hvilke_1[1] =new kombine(\'Wa2\', \'../2.htm\')
hvilke_1[2] =new kombine(\'Loc3\', \'../2.htm\')

function kombine(hvad, hvor){
this.hvad=hvad;
this.hvor=hvor;
}

function samle(i){
              // jeg ved godt at det er her fejlen ligger - men hvad skal jeg SÅ skrive? - det virker hvis man bare angiver hvilken_1[0]
    with (window[\'hvilke_\'+i+\'[0]\']){
        out = \'<OPTION selected>\'+hvad+\'</OPTION>\'
    }
/*
dette er lige meget da det før skal løses inden det næste ligevel kan komme til at virke
    for (var x=1; x!=hvilke_0.length; x++){
        with (hvilke_0[x]){
        out += \'<OPTION value=\"\'+hvor+\'\">\'+hvad+\'</OPTION>\'
        }
    }
*/
return out;
}


var wath=new Array();
wath[0] = samle(0)
wath[1] = samle(1)


document.write(\'<xmp>\'+wath[3]+\'<br>\')
document.write(wath[4]+\'</xmp>\')
</body>
</html>


Avatar billede minau Nybegynder
13. november 2001 - 19:13 #1
Der ståe naturligvis wath[0] og wath[1]

=

<html>
<body>
<script>
var hvilke_0 = new Array();
hvilke_0[0] =new kombine(\'Select from the Home\', \'\')
hvilke_0[1] =new kombine(\'Home\', \'../index.htm\')


var hvilke_1 = new Array();
hvilke_1[0] =new kombine(\'Select from Products\', \'\')
hvilke_1[1] =new kombine(\'Wa2\', \'../2.htm\')
hvilke_1[2] =new kombine(\'Loc3\', \'../2.htm\')

function kombine(hvad, hvor){
this.hvad=hvad;
this.hvor=hvor;
}

function samle(i){
              // jeg ved godt at det er her fejlen ligger - men hvad skal jeg SÅ skrive? - det virker hvis man bare angiver hvilken_1[0]
    with (window[\'hvilke_\'+i+\'[0]\']){
        out = \'<OPTION selected>\'+hvad+\'</OPTION>\'
    }
/*
dette er lige meget da det før skal løses inden det næste ligevel kan komme til at virke
    for (var x=1; x!=hvilke_0.length; x++){
        with (hvilke_0[x]){
        out += \'<OPTION value=\"\'+hvor+\'\">\'+hvad+\'</OPTION>\'
        }
    }
*/
return out;
}


var wath=new Array();
wath[0] = samle(0)
wath[1] = samle(1)


document.write(\'<xmp>\'+wath[0]+\'<br>\')
document.write(wath[1]+\'</xmp>\')
</body>
</html>

Avatar billede minau Nybegynder
13. november 2001 - 19:31 #2
er det fordi folk ikke forstår det - kommer der ikke nogen og ser det eller forstår i ikke hved jeg mener ?
Avatar billede minau Nybegynder
13. november 2001 - 19:35 #3
spørgsmålet er blot - hvordan kan man skrive det som jeg håber i forstår jeg mener:
i = 1
    with (window[\'hvilke_\'+i+\'[0]\']){
        out = \'<OPTION selected>\'+hvad+\'</OPTION>\'
    }
Avatar billede jakoba Nybegynder
13. november 2001 - 22:17 #4
Flyt din funktion kombine op foran det første sted du bruger den.
Avatar billede kurtspurt Nybegynder
14. november 2001 - 00:15 #5
Så du mener at jeg skulle skrive
<html><body>
<script>
function kombine(hvad, hvor){
this.hvad=hvad;
this.hvor=hvor;
}
var hvilke_0 = new Array();
hvilke_0[0] =new kombine(\'Select from the Home\', \'\')
hvilke_0[1] =new kombine(\'Home\', \'../index.htm\')
var hvilke_1 = new Array();
hvilke_1[0] =new kombine(\'Select from Products\', \'\')
hvilke_1[1] =new kombine(\'Wa2\', \'../2.htm\')
hvilke_1[2] =new kombine(\'Loc3\', \'../2.htm\')
function samle(i){
              // jeg ved godt at det er her fejlen ligger - men hvad skal jeg SÅ skrive? - det virker hvis man bare angiver hvilke_1[0]
    with (window[\'hvilke_\'+i+\'[0]\']){
        out = \'<OPTION selected>\'+hvad+\'</OPTION>\'
    }
return out;
}
var wath=new Array();
wath[0] = samle(0)
wath[1] = samle(1)
document.write(\'<xmp>\'+wath[0]+\'<br>\')
document.write(wath[1]+\'</xmp>\')
</script></body></html>

- \"et objekt er oblikatorisk\" i linje 16 (with linjen) - hvis jeg bare skriver hvilke_1[0] - så virker det - så det må da have noget at gøre med min
with (window[\'hvilke_\'+i+\'[0]\']){
hvor jeg åbenbart laver et eller andet galt med window[]
det kom fordi jeg så http://www.eksperten.dk/spm/128029
hvor du (jakoba) også har skrevet

skal det bruget noget eval() i stedet?
Avatar billede kurtspurt Nybegynder
14. november 2001 - 00:19 #6
AAAAAAAARRRRRRRRRRGGGGGG - min bror har være inde på eksperten - det har jeg jo ikke set. Den har logget ind med forkert bruger automatisk. Det er stadig Minau der skriver
Avatar billede minau Nybegynder
14. november 2001 - 00:20 #7
Sådan så er den lille navneforviring slut
Avatar billede jakoba Nybegynder
14. november 2001 - 00:43 #8
du har ret  window[\'hvilke_\'+i+\'[0]\']
skal istedet skrives som:
    window[\'hvilke_\'+i][0]  // kun skrive selve navnet ind på den måde

mvh JakobA
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