Avatar billede mathiash Nybegynder
09. august 2003 - 20:02 Der er 12 kommentarer og
1 løsning

Opdater variabel

Hej.

Jeg har et lille problem, jeg skal bruge et eksempel på at man skrive noget i et form-felt som så skal vises på siden.

Altså man skriver noget i et form-felt og det man skriver bliver vist ved siden af feltet, uden man klikker submit.

Jeg håber der er nogle der vil hjælpe.

//Mathias
Avatar billede roenving Novice
09. august 2003 - 20:07 #1
<input id="minInput" name="minInput" type="text" value="Tom" onkeyup="document.getElementById('minSpan').innerHTML=this.value;" onfocus="if(this.value==this.defaultValue)this.value='';" onblur="if(this.value=='')this.value=this.defaultValue;" size="20">
&nbsp;<span id="minSpan">En span-tekst</span>
Avatar billede mathiash Nybegynder
09. august 2003 - 20:10 #2
Er det muligt at gemme det i en variabel i stedet for?
Avatar billede roenving Novice
09. august 2003 - 20:15 #3
Ja, da, hvordan skal du bruge variablen ?-)
Avatar billede mathiash Nybegynder
10. august 2003 - 20:22 #4
Jeg skal have sådan at man indtaster hvor mange stk man vil have og så regner den sammen hvor meget det koster.

//Mathias
Avatar billede roenving Novice
10. august 2003 - 20:29 #5
Sådan noget ?-)

<input id="minInput" name="minInput" type="text" value="Tom" onchange="document.getElementById('minSpan').innerHTML=(25*this.value)+',- kr.';" onfocus="if(this.value==this.defaultValue)this.value='';" onblur="if(this.value=='')this.value=this.defaultValue;" size="20">
&nbsp;&nbsp;à pris: kr. 25,-<br>
Ialt:&nbsp;<span id="minSpan">En span-tekst</span>

-- bemærk, der skal klikkes udenfor feltet, ellers er det forvirrende hvis man skriver flere cifre !-)

Eller skal prisen også hentes fra et felt ...

At sætte en variabel til at opbevare er selvfølgelig ikke noget problem, men er det den eneste forekomst ?o]

Hvis der er flere forekomster er det jo en hel del smartere at lave en funktion, som finder rundt i det !-)
Avatar billede klid Nybegynder
13. august 2003 - 12:32 #6
Roenvings script er ganske anvendeligt, men hvis man har flere poster og gerne vil have en total med, hvordan kan man så det?

Synd du ikke har fået point for dit script, men du har jo heller ikke lavet et svar.

Jeg sætter getrne 30 point på højkant for et script, der også kan lave en total

klid
Avatar billede roenving Novice
13. august 2003 - 18:06 #7
Værsgo !-)

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
    "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<title>Bestillingsformular</title>
<meta name="Generator" content="Stone's WebWriter 4">
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<style type="text/css">

</style>
<script language="javascript" type="text/javascript">
numFields = 3;
function beregn(fld){
    if(!fld.value.match(/^\d+\.?\d*$/)){
        alert('Ugyldigt antal angivet');
        fld.value = fld.defaultValue;
        return false;
    }
   
    var num = fld.name.substring(5);
    var p = document.getElementById("Pris"+num).value;
    var s = document.getElementById("Sum"+num);
    var ialt = document.getElementById("Sum0");
    var pris = p;
    if(p.indexOf(",-")>-1){
        pris = p.substring(0,p.indexOf(",-"));
    }else{
        komma = p.indexOf(",")
        if(p.indexOf(",")){
            pris = (p.substring(0,komma)+"."+p.substring(komma+1));
        }
    }
    pris = +pris;
    var sum = pris*fld.value;
    s.value = formatNum(sum);
    sum = 0;
    for(i=1;numFields+1>i;i++){
        sum += +document.getElementById("Sum"+i).value
    }
    ialt.value = formatNum(sum);
}

function formatNum(t){
    if((""+t).length>(""+t).indexOf(".")+3)t=(Math.round(t*100))/100;
    if((""+t).indexOf(".")==-1)t=t+".00";
    if((""+t).indexOf(".")+2==(""+t).length)t=t+"0";
    return t;
}
</script>
</head>

<body>
<br>
<form id="minForm" name="minForm" action="http://www.eksperten.dk" method="post" onsubmit="alert('');return false">
<table border="1" cellpadding="0" cellspacing="0">
<tr>
    <td>
        <input id="Antal1" name="Antal1" type="text" value="Antal" onchange="beregn(this);" onfocus="if(this.value==this.defaultValue)this.value='';" onblur="if(this.value=='')this.value=this.defaultValue;" size="20"></td>
    <td align="right">
        <input id="Pris1" name="Pris1" type="text" value="100,20" size="20" disabled style="text-align:right;">&nbsp;</td>
    <td>
        <input id="Sum1" name="Sum1" type="text" value="" disabled size="20" style="text-align:right;">&nbsp;</td>
</tr>
<tr>
    <td>
        <input id="Antal2" name="Antal2" type="text" value="Antal" onchange="beregn(this);" onfocus="if(this.value==this.defaultValue)this.value='';" onblur="if(this.value=='')this.value=this.defaultValue;" size="20"></td>
    <td align="right">
        <input id="Pris2" name="Pris2" type="text" value="25,-" size="20" disabled style="text-align:right;">&nbsp;</td>
    <td>
        <input id="Sum2" name="Sum2" type="text" value="" disabled size="20" style="text-align:right;">&nbsp;</td>
</tr>
<tr>
    <td>
        <input id="Antal3" name="Antal3" type="text" value="Antal" onchange="beregn(this);" onfocus="if(this.value==this.defaultValue)this.value='';" onblur="if(this.value=='')this.value=this.defaultValue;" size="20"></td>
    <td align="right">
        <input id="Pris3" name="Pris3" type="text" value="93,75" size="20" disabled style="text-align:right;">&nbsp;</td>
    <td>
        <input id="Sum3" name="Sum3" type="text" value="" disabled size="20" style="text-align:right;">&nbsp;</td>
</tr>
<tr>
    <td colspan="2" align="right">
        Samlet pris:&nbsp;</td>
    <td>
        <input id="Sum0" name="Sum0" type="text" value="" disabled size="20" style="text-align:right;">&nbsp;</td>
</tr>
<tr>
    <td colspan="3">
        <input type="submit" value="Send bestilling" size="20"></td>
</tr>
</table>       
</form>
</body>

</html>
Avatar billede klid Nybegynder
14. august 2003 - 11:44 #8
Tak for svar. Jeg har brugt natten til at få det implementeret.
Der ligger point til Roeving på http://www.eksperten.dk/spm/387409.
Avatar billede roenving Novice
14. august 2003 - 12:00 #9
-- mange tak !-)
Avatar billede mathiash Nybegynder
15. august 2003 - 14:22 #10
roenving -> Tak! læg et svar ;-)
Avatar billede roenving Novice
15. august 2003 - 14:24 #11
Velbekomme '-)
Avatar billede mathiash Nybegynder
16. august 2003 - 17:19 #12
1000 tak!
Avatar billede roenving Novice
17. august 2003 - 10:31 #13
-- og tak for points ;~}
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