Avatar billede mrjowns Novice
14. marts 2011 - 11:22 Der er 5 kommentarer og
1 løsning

onchange på select virker ikke

Hvad er der galt med dette script - kan simpelthen ikke få det til at virke.

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">

<head>
<meta content="text/html; charset=utf-8" http-equiv="Content-Type" />
<title>TEST</title>
<script language="javascript" type="text/javascript">

function funkArbomr() {
    var varArbomr = document.getElementById('arbomr');
    if (varArbomr.value != "")
        document.getElementById('medarb').disabled = true;
        document.getElementById('but1').disabled = false;
        document.getElementById('but2').style.display = "none";
    }

function funkMedarb() {
    var varMedarb = document.getElementById('medarb');
    if (varMedarb.value != "")
        document.getElementById('arbomr').disabled = true;
        document.getElementById('but2').style.display = "block";
        document.getElementById('but1').style.display = "none";
    }
}

</script>
</head>

<body>

<form>
    <p>Arbejdsområder
    <select id="arbomr" name="arbomr" onchange="java script:funkArbomr(this.value)">
    <option selected="selected" value="">Arbejdsområde</option>
    <option value="#">Andelsboliger</option>
    <option value="/firmaprofil.aspx">Ejerforeninger</option>
    <option value="/firmaprofil/fordele.aspx">Udlejningsboliger</option>
    </select>
    </p>
    <p>Navn
    <select id="medarb" name="medarb" onchange="java script:funkMedarb(this.value)">
    <option selected="selected" value="">Navn</option>
    <option value="#">Søren Hansen</option>
    <option value="/firmaprofil/advokatfirmaet.aspx">Dorte Bergmann</option>
    <option value="/">Jan Lindeberg</option>
    </select>
    </p>
    <p>
    <input type="button" name="but1" id="but1" value="GO" disabled="disabled" />
    <input type="button" name="but2" id="but2" style="display:none;" value="GO" />
    </p>
   
</form>

</body>

</html>

Håber nogen kan hjælpe! :)
Avatar billede olsensweb.dk Ekspert
14. marts 2011 - 12:29 #1
>Hvad er der galt med dette
tæl dine { } :)
function funkArbomr() {
    var varArbomr = document.getElementById('arbomr');
    if (varArbomr.value != ""){ // <-- tuborg mangler
        document.getElementById('medarb').disabled = true;
        document.getElementById('but1').disabled = false;
        document.getElementById('but2').style.display = "none";
    }
} // <-- tuborg mangler

function funkMedarb() {
    var varMedarb = document.getElementById('medarb');
    if (varMedarb.value != ""){ // <-- tuborg mangler
        document.getElementById('arbomr').disabled = true;
        document.getElementById('but2').style.display = "block";
        document.getElementById('but1').style.display = "none";
    }
}


demo http://olsensweb.dk/test/experten/spm/934101/
Avatar billede werd Nybegynder
14. marts 2011 - 12:37 #2
når du kalder javascript i dine events så er det i et ord. Det er dog ikke det der er problemet.

Du skal huske at lukke dine '{' hvis du ikke gør det er der ingenting der kører :)

function funkArbomr() {
    var varArbomr = document.getElementById('arbomr');
    if (varArbomr.value != "")
    {
        document.getElementById('medarb').disabled = true;
        document.getElementById('but1').disabled = false;
        document.getElementById('but2').style.display = "none";
    }
}

function funkMedarb() {
    var varMedarb = document.getElementById('medarb');
    if (varMedarb.value != "")
    {
        document.getElementById('arbomr').disabled = true;
        document.getElementById('but2').style.display = "block";
        document.getElementById('but1').style.display = "none";
    }
}
Avatar billede olsensweb.dk Ekspert
14. marts 2011 - 12:51 #3
>når du kalder javascript i dine events så er det i et ord.
uden at have set spørgerens originale code, tror  jeg det skyldes en gammel fejl her på eksperten
http://www.eksperten.dk/spm/865697 #7
- og så kan man forresten heller ikke skrive 'java script:', uden det deles i to ord (jeg skrev det i ét ord)


>Det er dog ikke det der er problemet.
nej, det kan helt fjernes
Avatar billede mrjowns Novice
14. marts 2011 - 13:09 #4
Skal man nu også kunne tælle ;-)

Super! Tak for hjælpen!

Ronols - laver du et svar?
Avatar billede olsensweb.dk Ekspert
14. marts 2011 - 13:21 #5
det får du her
Avatar billede olebole Juniormester
14. marts 2011 - 17:31 #6
<ole>

- og for lige at afslutte historien om 'java script:', så er det fejl at bruge det i en event handler.

JavaScript pseudoprotokollen stammer fra Netscape 2.0, som var den første browser med JavaScript implementeret. Da der på dette tidspunkt var lidt famlen rundt omkring event handlere på HTML elementer, havde man brug for andre muligheder for at trigge scripts.

Derfor opfandt man JavaScript pseudoprotokollen til brug i et links href - så browseren var klar over, der ikke skulle skiftes side, men trigges et script. Fænomenet er helt på linje med 'mailto:', som åbner brugerens default mailprogram.

Da event handlers på HTML elementer blev bedre udviklet, blev JavaScript pseudoprotokollen mere eller mindre overflødig, da handlers ikke kan andet end trigge scripts. Den skader ikke ligefrem, men giver absolut ingen mening i en handler - og så bør den naturligvis undgås  =)

/mvh
</bole>
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