Avatar billede mccookie Seniormester
25. september 2002 - 23:29 Der er 10 kommentarer og
1 løsning

Change formfelt

<html>

<head>

  <script language=javascript>
 
  var youare = new Array(3);
 
  youare[0] = "ung";
  youare[1] = "udkørt";
  youare[2] = "ustabil";
 
  skifttekst() {
 
  }
 
</head>

<body>

<form>

  Alder: <input name=navn onChange="skifttekst()><br>
  Så er du: <input name=youare>
 
</form>

</body
</html>

Jeg har ovenstående kode og meningen er at når folk indtaster et tal i feltet, så når der trykkes tabulator - Opdateres felt youare..........er der nogen der lige kan vise mig hvordan ??
Avatar billede jakoba Nybegynder
25. september 2002 - 23:34 #1
<input type='text' name='navn' onBlur="skifttekst(this.form);">
<input type='text' name='youare'>

function skifttekst( frmEle ) {
    var tal = parseInt( "0"+frmEle.navn.value, 10 );
    var tal = tal % 3;
    frmEle.youare.value = youare[tal];
}

mvh JakobA
Avatar billede mccookie Seniormester
25. september 2002 - 23:37 #2
funktionen skal den stå i head ??
Avatar billede jakoba Nybegynder
25. september 2002 - 23:38 #3
Ja, der hvor du har skrevet den 'tomme' funktion
Avatar billede jakoba Nybegynder
25. september 2002 - 23:39 #4
Ups. husk at afslutte script området med </script> før </head> kommandoen.
Avatar billede mccookie Seniormester
25. september 2002 - 23:42 #5
Gider du at ofre 2 linier om hvad disse linier gør ?
Avatar billede mccookie Seniormester
25. september 2002 - 23:47 #6
Det virker ellers perfekt
Avatar billede mccookie Seniormester
25. september 2002 - 23:54 #7
Jeg håber du gider ofre de 2 min.................

Men indtilvidere TAK ;o)
Avatar billede jakoba Nybegynder
26. september 2002 - 00:02 #8
function skifttekst( frmEle ) {
    var tal = parseInt( "0"+frmEle.navn.value, 10 );
        // funktionen parseInt laver en streng (fx '1234') om til
        // den tilsvarende talværdi, 10-tallet angiver at vi ønsker at
        // læse tallet som et decimaltal

    var tal = tal % 3;
        // her ændres tallet til at være resten efter division med 3
        //fx  5 / 3 giver 1 med resten 2 så
        //    5 % 3 giver 2
        // på den måde sikrer jeg at tallet altid er 0, 1 eller 2 så det
        // kan bruges til at slå op i arrayet youare

    frmEle.youare.value = youare[tal];
        // slår op og lægger resultatet i feltet youare.
}

tak for pts.
Avatar billede jakoba Nybegynder
26. september 2002 - 00:07 #9
Men måske lidt urealistisk at påstå at folk er 'unge' hvert tredie år :)

en mere realistisk måde at bruge tallet kunne være:
    var tal = Math.floor( tal/30 );
    if ( tal > 2 ) tal = 2;
så er folk unge fra 0 til 29,
udkørte fra 30 til 59,
og ustabile fra 60 og op.

mvh JakobA
Avatar billede mccookie Seniormester
26. september 2002 - 00:14 #10
hehe
Takker mange gange !!

Jeg kan ikke helt det der modus !!
Men i udgangseksemplet er det modus 3, fordi mit array indeholder 3 felter ??
Men 3 modus 3 giver det ikke 1 ?? og burde det så ikke være youare[1] ?? bare en tanke
Avatar billede jakoba Nybegynder
26. september 2002 - 00:17 #11
3 / 3 -> 1 rest 0  så 3 % 3 -> 0
4 / 3 -> 1 rest 1  så 4 % 3 -> 1
osv.
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