Avatar billede kagge Nybegynder
24. marts 2003 - 10:02 Der er 5 kommentarer og
2 løsninger

Udregning ud fra en værdi

Hvis man har 2 indtastningsfelter i en formular:

<form name="test" onSubmit="return validering(this)" action="xxx.asp" method="post">

<INPUT TYPE="text" SIZE="5" NAME="timer">

<INPUT TYPE="text" SIZE="5" NAME="procent">

Når brugeren har indtastet i feltet "timer", så skal feltet "procent" opdateres automatisk.

37 timer = 100 %

Hvis brugeren indtaster 35 timer så skal det andet felt opdateres med 95% og så fremdeles.

Hvis det er muligt skal "procent" feltet være, så man ikke kan skrive eller redigere i feltet.

Det skal kun kunne virke i en IE-browser.
Avatar billede ocp Nybegynder
24. marts 2003 - 10:47 #1
<INPUT TYPE="text" SIZE="5" NAME="timer" onBlur=Calc(this)>
<INPUT TYPE="text" SIZE="5" NAME="procent" onBlur=Calc(this)>

<script lang=js>
  function Calc(obj)
  {
    if( obj.name == "timer" )
      procent.value = (obj.value / 37) * 100
    else
      timer.value = (obj.value / 100) * 37;
  };

</script>
Avatar billede dk_akj Nybegynder
24. marts 2003 - 10:49 #2
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">

<html>
<head>
<script language=javascript>
function calc(){
if (isNaN(document.test.timer.value)){
    alert("Timer skal være et tal")
    document.test.timer.focus()               
    return false;
}

document.test.procent.value = (parseInt(document.test.timer.value)/37)*100;
}
</script>
</head>

<body>
<form name="test" onSubmit="return validering(this)" action="xxx.asp" method="post">

<input type="text" name="timer" size="5" onChange="calc()">

<input type="text" name="procent" size="5">
</form>


</body>
</html>

//AKJ
Avatar billede ocp Nybegynder
24. marts 2003 - 10:49 #3
Hvis alle decimalerne generer dig kan du benytte flg.:

  function Calc(obj)
  {
    if( obj.name == "timer" )
      procent.value = parseInt((obj.value / 37) * 100)
    else
      timer.value = parseInt((obj.value / 100) * 37);
  };
Avatar billede speedy Nybegynder
24. marts 2003 - 10:50 #4
<form name="test" onsubmit="return validering(this)" action="xxx.asp" method="post">

<input type="text" size="5" name="timer" onkeyup="test.procent.value = Math.round(100 * test.timer.value / 37)">

<input type="text" disabled size="5" name="procent">

/SpEeDy
Avatar billede kagge Nybegynder
24. marts 2003 - 11:15 #5
Jeg prøver lige at rode lidt med det. Jeg vender tilbage lige om lidt.
Avatar billede kagge Nybegynder
24. marts 2003 - 11:31 #6
Tusind tak for hjælpen :)

Håber det er i orden med pointfordelingen, da ocp trods alt kom først.
Avatar billede dk_akj Nybegynder
24. marts 2003 - 11:33 #7
Det er helt iorden med mig :o)

Tak for pts.

//akj
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