Avatar billede krisbjoern Nybegynder
19. maj 2001 - 13:01 Der er 6 kommentarer og
1 løsning

sende bestemt(fra dynamisk tabel) index[i] værdi med videre til anden function

Jeg sidder og abejder med en dynamsik tabel, der skrives ud med en document.write, og som er afhængig af hvor mange \"emner\" der er oprettet i array\'et \"emneListe\".

Jeg har oprettet en kollone hvor der øverst står \"Mere Information\" og i rækkerne hørende til de pågældende \"sager\"(sag001, sag002, sag003, osv) udskrives et link: Beskrivelse.

Når man trykker på linket, skal dette kalde en function der udskriver mere uddybende data hørende til det pågældende index[i] nummer. Dataen ligger i objectet emne0 = new emne(a,b,c,d,e,f,g,h) osv.

kan nogen mon hjælpe mig?

Jeg kan godt få tingene til at virke med et \"testprogram\" med IKKE ved at klikke på linket...

Her er kilde koden:(den linie der laver bøvl har jeg lavet dobbelt mellemrum til!)

<html>
<head>
    <title>Ekstranet for DICA Aps</title>
    <SCRIPT LANGUAGE=\"JavaScript\">
   
    /******************************************
    ***                                    ***
    ***  Af Majbrit Nielsen &              ***
    ***    Kristian Bjørn                  ***
    ***                                    ***
    ***    00Muld-A , eksammensprojekt    ***
    ***                Sommeren 2001        ***
    ***                                    ***
    ******************************************/
   
    //først en lille velkomst hilsen!
    document.write(\"Velkommen til prototypetesten af EKSTRANETTET til DICA Aps...\"+\"<BR><HR>\")
   
    //Oprettelse af et emne-objekt, der skal bruges til at deffinere de sager der
    //arbejdes med på sitet
   
    function emne(sagnr, adresse, stoerrelse, pris, indretning, anvendelse, beskrivelse, mereinfo, billede, kontaktref){
   
    this.sagnr=sagnr
    this.adresse=adresse
    this.stoerrelse=stoerrelse
    this.pris=pris
    this.indretning=indretning
    this.anvendelse=anvendelse
    this.beskrivelse=beskrivelse
    this.mereinfo=mereinfo
    this.billede=billede
    this.kontaktref=kontaktref
}
   
    function projektemne(sagnr, adresse, stoerrelse, pris, forv_faerdig, projektbeskr, billede,kontaktref){
   
    this.sagnr=sagnr
    this.adresse=adresse
    this.stoerrelse=stoerrelse
    this.pris=pris
    this.forv_faerdig=forv_faerdig
    this.projektbeskr=projektbeskrivelse
    this.billede=billede
    this.kontaktref=kontaktref
}
   
    function ansat(ansvar, navn, tlf, mail, billede){
   
    this.ansvar=ansvar
    this.navn=navn
    this.tlf=tlf
    this.mail=mail
    this.billede=billede
}

    function driftsudgifter(adm, vandogel, faellesudg, vedligeholdelse, ejend_skat){
   
    this.adm=administration
    this.vandogel=vandogel
    this.faellesudg=faellesudg
    this.vedligeholdelse=vedligeholdelse
    this.ejend_skat=ejendomsskat
}
   
    //Oprettelse af funktion der udskriver samtlige emner fra listen i en tabel
    function visListe(){
            this.visListe = emneListe;
            document.write(\"Her er listen over aktuelle sager:<BR><BR>\")
            document.write(\"<TABLE border=\'1\'><TR><TD>Sagnr.:</TD>\"+
            \"<TD>Adresse:</TD><TD>Størrelse:</TD><TD>Pris:</TD><TD>Mere Information:</TD>\")
            var i = 0;
                for(i=0; i<this.emneListe.length; i++){
                   
                    document.write(\"<TR><TD><FONT COLOR=\'GREEN\'>\"+emneListe[i].sagnr+\"</TD>\"+
                    \"<TD><FONT COLOR=\'GREEN\'>\"+emneListe[i].adresse+\"</TD>\"+
                    \"<TD><FONT COLOR=\'GREEN\'>\"+emneListe[i].stoerrelse+\"</TD>\"+
                    \"<TD><FONT COLOR=\'GREEN\'>\"+emneListe[i].pris+\"</TD>\"+
                    //\"<TD><FONT COLOR=\'GREEN\'>\"+emneListe[i].indretning+\"</TD>\"+
                    //\"<TD><FONT COLOR=\'GREEN\'>\"+emneListe[i].anvendelse+\"</TD>\"+
                    //\"<TD><FONT COLOR=\'GREEN\'>\"+emneListe[i].billede+\"</TD>\"+
                   

\"<TD><FONT COLOR=\'GREEN\'><A HREF=\'java script:OnClick=tilfoej(emneListe[i])\'>\"+emneListe[i].mereinfo+\"</A></TD></TR>\")


                                        document.writeln(\"<HR>\");
   
}
    function mereInfo(){
        this.emneValg = new Array();
        this.Saldo = 0
        this.tilfoej = tilfoej;
        this.visInfo = visInfo;
}

    function tilfoej(emneInfo){
        this.emneValg[this.emneValg.length] = emneInfo;
        Beskrivelse.visInfo();
}
   
    function visInfo(){
        var i = 0;
        for(i=0; i<this.emneValg.length; i++){
            if(this.emneValg[i] != \"\"){
                alert(\"du har trykket på:\\n\"+this.emneValg[i].sagnr)
                }
            }
           
           
}
   
   
       
    //Oprettelse af en funktion der undersøger indholdet i Login-formen
    function checkLogin(form){
    if (kode.login.value ==\"\")
    alert(\"Du skal skrive dit Login-ID i Login-feltet\");
    else if (kode.login.value !=\"mægler\")
    alert(\"Dit Login-ID er IKKE korrekt!\")
    else if (kode.login.value ==\"mægler\"){
        if (kode.psw.value ==\"\")
        alert(\"Du har IKKE indtastet dit password!\")
        else if(kode.psw.value !=\"demo\")
        alert(\"dit password stemmer IKKE overens med dit Login-ID\")
        else if(kode.psw.value ==\"demo\")
        alert(\"Du har korrekt logget in med Login-ID og Password\\n TILLYKKE\")
        }
   
}
   
    //Oprettelse af Login-form i et object, der kan kaldes via en knap f.eks eller fra
    //test programmet
    function logOn(){
    document.write(\"<CENTER><FORM onSubmit=\'checkLogin(this)\' NAME=\'kode\'>\"+
                  \"<TABLE BORDER=0 WIDTH=\'300\' CELLSPACING=0 CELLPADDING=0 BGCOLOR=\'0066cc\'>\"+
                  \"<TR>\"+
                  \"<TD ALIGN=LEFT VALIGN=MIDDLE WIDTH=\'150\'>\"+
                  \"<FONT SIZE=2 FACE=\'Verdana, Arial, Helvetica\' COLOR=\'ffffff\'><BR>\"+
                  \"&nbsp;&nbsp;&nbsp;<B>Login</B></FONT></TD>\"+
                  \"<TD WIDTH=\'143\' VALIGN=MIDDLE ALIGN=LEFT><BR>\"+
                  \"<INPUT TYPE=\'text\' SIZE=15 NAME=\'login\'></TD>\"+
                  \"</TR>\"+
                  \"<TR>\"+
                  \"<TD ALIGN=LEFT VALIGN=MIDDLE WIDTH=\'150\'>\"+
                  \"<FONT SIZE=2 FACE=\'Verdana, Arial, Helvetica\' COLOR=\'ffffff\'>\"+
                  \"&nbsp;&nbsp;&nbsp;<B>Password</B></FONT></TD>\"+
                  \"<TD WIDTH=\'143\' VALIGN=MIDDLE ALIGN=LEFT>\"+
                  \"<INPUT TYPE=\'password\' SIZE=15 NAME=\'psw\'></TD>\"+
                  \"</TR>\"+
                  \"<TR>\"+
                  \"<TD COLSPAN=2 ALIGN=CENTER WIDTH=\'300\'>\"+
                  \"<BR><INPUT TYPE=\'hidden\' NAME=\'login_request\' VALUE=1>\"+
                  \"<INPUT TYPE=\'submit\' VALUE=\'SEND!\'><BR>&nbsp;<TD>\"+
                  \"</TR>\"+
                  \"</TABLE></CENTER>\"+
                  \"</FORM>\")
}
   
    //oprettelse af login fuktion der IKKE virke!
    function logon2(){
    document.write(\"Finasielle partnere kan ikke \'logge in\' endnu!\")
    }
    //oprettelse af login fuktion der IKKE virke!
    function logon3(){
    document.write(\"Der er ikke adgang til INTRANETTET!!!\")
    }
   
           
    //Her opretters emner og emneListe(array)
   
    emne0 = new emne(\"sag001\", \"adresse\", \"stoerrelse\", \"pris\", \"indretning\", \"anvendelse\", \"Beskrivelse...\",\"Beskrivelse\", \"billedref\",\"mail@prototype.dk\");
    emne1 = new emne(\"sag002\", \"adresse\", \"stoerrelse\", \"pris\", \"indretning\", \"anvendelse\", \"Beskrivelse...\",\"Beskrivelse\", \"billedref\",\"mail@prototype.dk\");
    emne2 = new emne(\"sag003\", \"adresse\", \"stoerrelse\", \"pris\", \"indretning\", \"anvendelse\", \"Beskrivelse...\",\"Beskrivelse\", \"billedref\",\"mail@prototype.dk\");
    emne3 = new emne(\"sag004\", \"adresse\", \"stoerrelse\", \"pris\", \"indretning\", \"anvendelse\", \"Beskrivelse...\",\"Beskrivelse\", \"billedref\",\"mail@prototype.dk\");
    emne4 = new emne(\"sag005\", \"adresse\", \"stoerrelse\", \"pris\", \"indretning\", \"anvendelse\", \"Beskrivelse...\",\"Beskrivelse\", \"billedref\",\"mail@prototype.dk\");
    emne5 = new emne(\"sag006\", \"adresse\", \"stoerrelse\", \"pris\", \"indretning\", \"anvendelse\", \"Beskrivelse...\",\"Beskrivelse\", \"billedref\",\"mail@prototype.dk\");
    emne6 = new emne(\"sag007\", \"adresse\", \"stoerrelse\", \"pris\", \"indretning\", \"anvendelse\", \"Beskrivelse...\",\"Beskrivelse\", \"billedref\",\"mail@prototype.dk\");
    emne7 = new emne(\"sag008\", \"adresse\", \"stoerrelse\", \"pris\", \"indretning\", \"anvendelse\", \"Beskrivelse...\",\"Beskrivelse\", \"billedref\",\"mail@prototype.dk\");
    emne8 = new emne(\"sag009\", \"adresse\", \"stoerrelse\", \"pris\", \"indretning\", \"anvendelse\", \"Beskrivelse...\",\"Beskrivelse\", \"billedref\",\"mail@prototype.dk\");
    emne9 = new emne(\"sag011\", \"adresse\", \"stoerrelse\", \"pris\", \"indretning\", \"anvendelse\", \"Beskrivelse...\",\"Beskrivelse\", \"billedref\",\"mail@prototype.dk\");
    emne10 = new emne(\"sag012\", \"adresse\", \"stoerrelse\", \"pris\", \"indretning\", \"anvendelse\", \"Beskrivelse...\",\"Beskrivelse\", \"billedref\",\"mail@prototype.dk\");
   
    //Her skabes emneListen som et array
   
    emneListe = [emne0,emne1,emne2,emne3,emne4,emne5,emne6,emne7,emne8,emne9,emne10];
   
    Beskrivelse = new mereInfo();
   

   
/**************************************************************************************************
***************************************************************************************************
*************                                                                        *************
*************    ########  ######  ###  ######                                      *************
*************    ########  ##      #      ######                                      *************
*************      ##    ####    ###    ##                                        *************
*************      ##    ##          #    ##                                        *************
*************      ##    ######  ###    ##  -PROGRAM                            *************
*************                                                                        *************
***************************************************************************************************
**************************************************************************************************/
   
   
   
   
    //Her kaldes funktionen der udskriver en login-DialogBox!!!
    //logOn();
    visListe();
   
   
    //Beskrivelse.tilfoej(emneListe[0]);
    //Beskrivelse.visInfo();
   
   
    </SCRIPT>
</head>

<body>




</body>
</html>
Avatar billede jakoba Nybegynder
19. maj 2001 - 13:12 #1
sidst i funktionen visliste:
    document.writeln(\"<hr>\")
giver ingen mening. det skal enten skrives indeni en celle eller helt udenfor tabellen.
Avatar billede krisbjoern Nybegynder
19. maj 2001 - 15:18 #2
OKAY...

Jeg prøver lige igen...
Denne kode virker:



<html>
<head>
    <title></title>
    <SCRIPT LANGUAGE=\"JavaScript\">

   
 
    //Oprettelse af et emne-objekt, der skal bruges til at deffinere de sager der
    //arbejdes med på sitet
   
    function emne(sagnr, adresse, stoerrelse, pris, indretning, anvendelse, beskrivelse, mereinfo, billede, kontaktref){
   
    this.sagnr=sagnr
    this.adresse=adresse
    this.stoerrelse=stoerrelse
    this.pris=pris
    this.indretning=indretning
    this.anvendelse=anvendelse
    this.beskrivelse=beskrivelse
    this.mereinfo=mereinfo
    this.billede=billede
    this.kontaktref=kontaktref
}
   
     
   
    //Oprettelse af funktion der udskriver samtlige emner fra listen i en tabel
    function visListe(){
            this.visListe = emneListe;
            document.write(\"Her er listen over aktuelle sager:<BR><BR>\")
            document.write(\"<TABLE border=\'1\'><TR><TD>Sagnr.:</TD>\"+
            \"<TD>Adresse:</TD><TD>Størrelse:</TD><TD>Pris:</TD><TD>Mere Information:</TD>\")
            var i = 0;
                for(i=0; i<this.emneListe.length; i++){
                   
                    document.write(\"<TR><TD><FONT COLOR=\'GREEN\'>\"+emneListe[i].sagnr+\"</TD>\"+
                    \"<TD><FONT COLOR=\'GREEN\'>\"+emneListe[i].adresse+\"</TD>\"+
                    \"<TD><FONT COLOR=\'GREEN\'>\"+emneListe[i].stoerrelse+\"</TD>\"+
                    \"<TD><FONT COLOR=\'GREEN\'>\"+emneListe[i].pris+\"</TD>\"+
                   
                   
                    \"<TD><FONT COLOR=\'GREEN\'><A HREF=\'java script:OnClick=tilfoej(emneListe[i])\'>\"+
                    emneListe[i].mereinfo+\"</A></TD></TR>\")}
                   
                   
                    document.write(\"</TABLE>\")


}
    function mereInfo(){
        this.emneValg = new Array();
        this.Saldo = 0
        this.tilfoej = tilfoej;
        this.visInfo = visInfo;
}

    function tilfoej(emneInfo){
        this.emneValg[this.emneValg.length] = emneInfo;
        Beskrivelse.visInfo();
}
   
    function visInfo(){
        var i = 0;
        for(i=0; i<this.emneValg.length; i++){
            if(this.emneValg[i] != \"\"){
                alert(\"du har trykket på:\\n\"+this.emneValg[i].sagnr)
                }
            }
           
           
}
   


    //Her opretters emner og emneListe(array)
   
    emne0 = new emne(\"sag001\", \"adresse\", \"stoerrelse\", \"pris\", \"indretning\", \"anvendelse\", \"Beskrivelse...\",\"Beskrivelse\", \"billedref\",\"mail@prototype.dk\");
    emne1 = new emne(\"sag002\", \"adresse\", \"stoerrelse\", \"pris\", \"indretning\", \"anvendelse\", \"Beskrivelse...\",\"Beskrivelse\", \"billedref\",\"mail@prototype.dk\");
    emne2 = new emne(\"sag003\", \"adresse\", \"stoerrelse\", \"pris\", \"indretning\", \"anvendelse\", \"Beskrivelse...\",\"Beskrivelse\", \"billedref\",\"mail@prototype.dk\");
    emne3 = new emne(\"sag004\", \"adresse\", \"stoerrelse\", \"pris\", \"indretning\", \"anvendelse\", \"Beskrivelse...\",\"Beskrivelse\", \"billedref\",\"mail@prototype.dk\");
    emne4 = new emne(\"sag005\", \"adresse\", \"stoerrelse\", \"pris\", \"indretning\", \"anvendelse\", \"Beskrivelse...\",\"Beskrivelse\", \"billedref\",\"mail@prototype.dk\");
    emne5 = new emne(\"sag006\", \"adresse\", \"stoerrelse\", \"pris\", \"indretning\", \"anvendelse\", \"Beskrivelse...\",\"Beskrivelse\", \"billedref\",\"mail@prototype.dk\");
    emne6 = new emne(\"sag007\", \"adresse\", \"stoerrelse\", \"pris\", \"indretning\", \"anvendelse\", \"Beskrivelse...\",\"Beskrivelse\", \"billedref\",\"mail@prototype.dk\");
    emne7 = new emne(\"sag008\", \"adresse\", \"stoerrelse\", \"pris\", \"indretning\", \"anvendelse\", \"Beskrivelse...\",\"Beskrivelse\", \"billedref\",\"mail@prototype.dk\");
    emne8 = new emne(\"sag009\", \"adresse\", \"stoerrelse\", \"pris\", \"indretning\", \"anvendelse\", \"Beskrivelse...\",\"Beskrivelse\", \"billedref\",\"mail@prototype.dk\");
    emne9 = new emne(\"sag011\", \"adresse\", \"stoerrelse\", \"pris\", \"indretning\", \"anvendelse\", \"Beskrivelse...\",\"Beskrivelse\", \"billedref\",\"mail@prototype.dk\");
    emne10 = new emne(\"sag012\", \"adresse\", \"stoerrelse\", \"pris\", \"indretning\", \"anvendelse\", \"Beskrivelse...\",\"Beskrivelse\", \"billedref\",\"mail@prototype.dk\");
   
    //Her skabes emneListen som et array
   
    emneListe = [emne0,emne1,emne2,emne3,emne4,emne5,emne6,emne7,emne8,emne9,emne10];
   
    Beskrivelse = new mereInfo();
   

   
/***************** TEST PROGRAM ********************************/
   
   
   
    //Her kaldes funktionen der udskriver en login-DialogBox!!!
   
    visListe();
   
   
    //Beskrivelse.tilfoej(emneListe[0]);
    //Beskrivelse.visInfo();
   
   
    </SCRIPT>
</head>
<body>
</body>
</html>
Avatar billede jakoba Nybegynder
19. maj 2001 - 23:01 #3
Hovsa. den er jo supersimpel.

dit link siger:
<A HREF=\'java script:OnClick=tilfoej(emneListe[i])\'>\"+emneListe[i].mereinfo+\"</A>

dvs det prøver at være en onclick event og et href link på een gang.

prøv med:
<A HREF=\'java script:void(tilfoej(emneListe[i]))\'>\"+emneListe[i].mereinfo+\"</A>
(kun href link)
eller:
<A HREF=\'java script:void(0)\'
OnClick=\'tilfoej(emneListe[i])\'>\"+emneListe[i].mereinfo+\"</A>
(kun onclick event)

de skulle begge virke.

mvh JakobA
Avatar billede jakoba Nybegynder
22. maj 2001 - 21:15 #4
Avatar billede jakoba Nybegynder
20. august 2001 - 07:33 #5
?
Avatar billede jakoba Nybegynder
06. oktober 2001 - 20:36 #6
Hvis det ikke er hvad der ønskes, vil det være rart hvis du kommenterer og fortæller hvad der er galt.

mvh JakobA
Avatar billede krisbjoern Nybegynder
01. november 2001 - 04:01 #7
For meget om ørene...
Jeg kan ikke huske om du løste mit problem, men her er pointene fordi jeg ikke har fået fulgt op på dette spørgsmål
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