Avatar billede Keld Nielsen Professor
11. januar 2002 - 16:31 Der er 11 kommentarer og
1 løsning

Kr og ører i indtastning og resultat

Jeg mangler et par funktioner til:

1: Indtastningsfelt, her skal det være lige meget om man indtaster med punktum eller komma som seperator mellem kroner og ører.
Hvis den også kan klare at vise f.eks. 23,50 ved indtastning af 23.5 vil det være lækkert.

2: Resultatfelt, her skal resultatet gerne vises i formatet  KK.KKK,ØØ  f.eks.: 12.345,67
Avatar billede Keld Nielsen Professor
11. januar 2002 - 16:32 #1
supplement til 1 - den skal lave det indtastede om til punktum som seperator
Avatar billede ras2000 Nybegynder
13. januar 2002 - 13:38 #2
<html>
<head>
<script type=\"text/javascript\">
function kroner(felt){
var a = felt.value.replace(\",\",\".\");
a = Math.round(a*100)/100;
if (a == Math.round(a)){
a = a + \',00\';
}
if (a == Math.round(a*10)/10) {
a = a + \'0\';
}
felt.value = a;
felt.value = felt.value.replace(\".\", \",\");
}
</script>
</head>
<body>
<input type=\"text\" onblur=\"kroner(this)\">
</body>
</html>
Giver decimalerne som du vil have. Jeg arbejder lige med seperatoren.
Avatar billede ras2000 Nybegynder
13. januar 2002 - 16:59 #3
<html>
<head>
<script type=\"text/javascript\">
function kroner(felt){
    var a = felt.value.replace(\".\",\"\");
    var a = felt.value.replace(\".\",\"\");
    var a = felt.value.replace(\".\",\"\");
    var a = felt.value.replace(\".\",\"\");
    var a = felt.value.replace(\",\",\".\");
    a = Math.round(a*100)/100;
    if (a == Math.round(a)){
        a = a + \',00\';
    }
    if (a == Math.round(a*10)/10) {
        a = a + \'0\';
    }
    a = a + \'\';
    a = a.replace(\".\", \",\");
    b = 0;
    str = \'\';
    str1 = \'\';
    for (i = 4; i < a.length+1; i++){
        str = str + a.charAt(a.length - i)
        b++
        if (b == 3 && i < a.length){
            str = str + \'.\';
            b = 0;
        }
    }
    alert(str);
    for (i = 0; i < str.length+1; i++){
        str1 = str1 + str.charAt(str.length - i);
    }
    str1 = str1 + a.slice(a.length - 3);
    felt.value = str1;
}
</script>
</head>
<body>
<input type=\"text\" onblur=\"kroner(this)\">
</body>
</html>
Avatar billede Keld Nielsen Professor
14. januar 2002 - 07:47 #4
Hej \'ras2000\'
Det ser ud til at du har skrevet det sammen i een funktion, ka du dele det i to funktioner - en til indtastningen og en til resultatet???
Avatar billede Keld Nielsen Professor
15. januar 2002 - 10:48 #5
De to funktioner vil ikke rigtig sammen, hver for sig virker de.

Den sidste funktion får sin information efter en beregning, og her er der et eller andet der går galt i denne funktion.

Jeg ka\' også sende det hele til dig - det er ikke særlig kompliceret - men jeg er røget ind i et eller andet som jeg ikke lige kan se lyset i.
Avatar billede ras2000 Nybegynder
15. januar 2002 - 11:27 #6
Prøv at læg et link til siden, eller koden til hele siden, jeg er ikke helt sikker på hvordan du sender information til resultatsfeltet.
Avatar billede Keld Nielsen Professor
15. januar 2002 - 11:53 #7
Avatar billede ras2000 Nybegynder
15. januar 2002 - 13:39 #8
det var linien tusindekroner(ialt) der kiksede, den sendte ingen værdi retur. Nu skulle den være der.
<html>

    <head>
        <meta http-equiv=\"content-type\" content=\"text/html;charset=iso-8859-1\">
        <meta name=\"generator\" content=\"Adobe GoLive 5\">
        <title>Vandspil-beregning</title>
<SCRIPT LANGUAGE=\"JavaScript\">
<!-- Begin

function getRadioValue(knap) {
for (var i=0; knap.length>1; i++)
  if ( knap[i].checked ) return knap[i].value;
return -1; // ingen knap er klikket
}

function vandspild() {
pris = parseFloat(document.energispild.pris.value);
spild = getRadioValue(document.energispild.spild);
ialt = tusindkroner((pris*spild));
document.energispild.udregnetpris.value = ialt;
}

function kroner(pris){
var a = pris.value.replace(\",\",\".\");
a = Math.round(a*100)/100;
if (a == Math.round(a)){
a = a + \',00\';
}
if (a == Math.round(a*10)/10) {
a = a + \'0\';
}
pris.value = a;
pris.value = pris.value.replace(\".\", \",\");
}

function tusindkroner(ialt){
    var a = ialt
    a = Math.round(a*100)/100;
    if (a == Math.round(a)){
        a = a + \',00\';
    }
    if (a == Math.round(a*10)/10) {
        a = a + \'0\';
    }
    a = a + \'\';
    a = a.replace(\".\", \",\");
    b = 0;
    str = \'\';
    str1 = \'\';
    for (i = 4; i < a.length+1; i++){
        str = str + a.charAt(a.length - i)
        b++
        if (b == 3 && i < a.length){
            str = str + \'.\';
            b = 0;
        }
    }
    for (i = 0; i < str.length+1; i++){
        str1 = str1 + str.charAt(str.length - i);
    }
    str1 = str1 + a.slice(a.length - 3);
    ialt = str1;
    return ialt;
}


//  End -->
</script>
    </head>

    <body bgcolor=\"#ffffff\">
        <form name=\"energispild\">
            <font face=\"Tahoma\"><b>Beregning af vandspild</b></font>
            <p></p>
            <table border=\"0\" cellpadding=\"0\" cellspacing=\"2\" width=\"488\">
                <tr>
                    <td><font face=\"Tahoma\">Kr/&oslash;re pr. m<sup>3</sub></font></td>
                    <td><input type=\"text\" name=pris size=\"24\" onblur=\"kroner(this)\">
                        <p></p>
                    </td>
                </tr>
                <tr>
                    <td colspan=\"2\">
                        <table border=\"0\" cellpadding=\"0\" cellspacing=\"2\" width=\"212\">
                            <tr>
                                <td><font face=\"Tahoma\" size=\"-7\">Svagdryppende<br>
                                        vandhane</font></td>
                                <td><font face=\"Tahoma\" size=\"-7\">Dryppende<br>
                                        vandhane</font></td>
                                <td><font face=\"Tahoma\" size=\"-7\">L&oslash;bende<br>
                                        vandhane</font></td>
                                <td><font face=\"Tahoma\" size=\"-7\">Svagl&oslash;bende<br>
                                        toliet</font></td>
                                <td><font face=\"Tahoma\" size=\"-7\">L&oslash;bende<br>
                                        toilet</font></td>
                                <td><font face=\"Tahoma\" size=\"-7\">Kraftig <br>
                                        l&oslash;bende<br>
                                        toliet</font></td>
                                <td><font face=\"Tahoma\" size=\"-7\">Konstant<br>
                                        l&oslash;bende<br>
                                        toilet</font></td>
                            </tr>
                            <tr>
                                <td align=\"center\"><input type=\"radio\" value=\"8\" name=spild checked></td>
                                <td align=\"center\"><input type=\"radio\" value=\"30\" name=spild></td>
                                <td align=\"center\"><input type=\"radio\" value=\"90\" name=spild></td>
                                <td align=\"center\"><input type=\"radio\" value=\"110\" name=spild></td>
                                <td align=\"center\"><input type=\"radio\" value=\"200\" name=spild></td>
                                <td align=\"center\"><input type=\"radio\" value=\"400\" name=spild></td>
                                <td align=\"center\"><input type=\"radio\" value=\"3000\" name=spild></td>
                            </tr>
                        </table>
                        <p></p>
                    </td>
                </tr>
                <tr>
                    <td colspan=\"2\"><input type=button value=\"Beregn\" name=beregn onClick=\"vandspild()\">
                        <p></p>
                    </td>
                </tr>
                <tr>
                    <td><font face=\"Tahoma\">Spild pr. &aring;r</font></td>
                    <td><input type=\"text\" name=udregnetpris size=\"24\"></td>
                </tr>
            </table>
            <p></p>
        </form>
        <table cool width=\"731\" height=\"387\" usegridx usegridy showgridx showgridy gridx=\"16\" gridy=\"16\" border=\"0\" cellpadding=\"0\" cellspacing=\"0\">
            <tr height=\"386\">
                <td width=\"730\" height=\"386\"></td>
                <td width=\"1\" height=\"386\"><spacer type=\"block\" width=\"1\" height=\"386\"></td>
            </tr>
            <tr height=\"1\" cntrlrow>
                <td width=\"730\" height=\"1\"><spacer type=\"block\" width=\"730\" height=\"1\"></td>
                <td width=\"1\" height=\"1\"></td>
            </tr>
        </table>
        <p></p>
    </body>

</html>
Avatar billede Keld Nielsen Professor
15. januar 2002 - 17:22 #9
Nu er vi der næsten - flot!

Men den giver ingen øreværdi - prøv f.eks. at indtaste 21,11 og lad forvalget stå, så skulle den sige: 168,88 - men den siger 168,00
Avatar billede ras2000 Nybegynder
16. januar 2002 - 10:09 #10
Jepper, det var den der parseFloat, den fjernede alt efter kommaet. Prøv denne.
<html>

    <head>
        <meta http-equiv=\"content-type\" content=\"text/html;charset=iso-8859-1\">
        <meta name=\"generator\" content=\"Adobe GoLive 5\">
        <title>Vandspil-beregning</title>
<SCRIPT LANGUAGE=\"JavaScript\">
<!-- Begin

function getRadioValue(knap) {
for (var i=0; knap.length>1; i++)
  if ( knap[i].checked ) return knap[i].value;
return -1; // ingen knap er klikket
}

function vandspild() {
pris = document.energispild.pris.value.replace(\",\",\".\");
alert(pris);
spild = getRadioValue(document.energispild.spild);
ialt = tusindkroner((pris*spild));
document.energispild.udregnetpris.value = ialt;
}

function kroner(pris){
var a = pris.value.replace(\",\",\".\");
a = Math.round(a*100)/100;
if (a == Math.round(a)){
a = a + \',00\';
}
if (a == Math.round(a*10)/10) {
a = a + \'0\';
}
pris.value = a;
pris.value = pris.value.replace(\".\", \",\");
}

function tusindkroner(ialt){
    var a = ialt
    a = Math.round(a*100)/100;
    if (a == Math.round(a)){
        a = a + \',00\';
    }
    if (a == Math.round(a*10)/10) {
        a = a + \'0\';
    }
    a = a + \'\';
    a = a.replace(\".\", \",\");
    b = 0;
    str = \'\';
    str1 = \'\';
    for (i = 4; i < a.length+1; i++){
        str = str + a.charAt(a.length - i)
        b++
        if (b == 3 && i < a.length){
            str = str + \'.\';
            b = 0;
        }
    }
    for (i = 0; i < str.length+1; i++){
        str1 = str1 + str.charAt(str.length - i);
    }
    str1 = str1 + a.slice(a.length - 3);
    ialt = str1;
    return ialt;
}


//  End -->
</script>
    </head>

    <body bgcolor=\"#ffffff\">
        <form name=\"energispild\">
            <font face=\"Tahoma\"><b>Beregning af vandspild</b></font>
            <p></p>
            <table border=\"0\" cellpadding=\"0\" cellspacing=\"2\" width=\"488\">
                <tr>
                    <td><font face=\"Tahoma\">Kr/&oslash;re pr. m<sup>3</sub></font></td>
                    <td><input type=\"text\" name=pris size=\"24\" onblur=\"kroner(this)\">
                        <p></p>
                    </td>
                </tr>
                <tr>
                    <td colspan=\"2\">
                        <table border=\"0\" cellpadding=\"0\" cellspacing=\"2\" width=\"212\">
                            <tr>
                                <td><font face=\"Tahoma\" size=\"-7\">Svagdryppende<br>
                                        vandhane</font></td>
                                <td><font face=\"Tahoma\" size=\"-7\">Dryppende<br>
                                        vandhane</font></td>
                                <td><font face=\"Tahoma\" size=\"-7\">L&oslash;bende<br>
                                        vandhane</font></td>
                                <td><font face=\"Tahoma\" size=\"-7\">Svagl&oslash;bende<br>
                                        toliet</font></td>
                                <td><font face=\"Tahoma\" size=\"-7\">L&oslash;bende<br>
                                        toilet</font></td>
                                <td><font face=\"Tahoma\" size=\"-7\">Kraftig <br>
                                        l&oslash;bende<br>
                                        toliet</font></td>
                                <td><font face=\"Tahoma\" size=\"-7\">Konstant<br>
                                        l&oslash;bende<br>
                                        toilet</font></td>
                            </tr>
                            <tr>
                                <td align=\"center\"><input type=\"radio\" value=\"8\" name=spild checked></td>
                                <td align=\"center\"><input type=\"radio\" value=\"30\" name=spild></td>
                                <td align=\"center\"><input type=\"radio\" value=\"90\" name=spild></td>
                                <td align=\"center\"><input type=\"radio\" value=\"110\" name=spild></td>
                                <td align=\"center\"><input type=\"radio\" value=\"200\" name=spild></td>
                                <td align=\"center\"><input type=\"radio\" value=\"400\" name=spild></td>
                                <td align=\"center\"><input type=\"radio\" value=\"3000\" name=spild></td>
                            </tr>
                        </table>
                        <p></p>
                    </td>
                </tr>
                <tr>
                    <td colspan=\"2\"><input type=button value=\"Beregn\" name=beregn onClick=\"vandspild()\">
                        <p></p>
                    </td>
                </tr>
                <tr>
                    <td><font face=\"Tahoma\">Spild pr. &aring;r</font></td>
                    <td><input type=\"text\" name=udregnetpris size=\"24\"></td>
                </tr>
            </table>
            <p></p>
        </form>
        <table cool width=\"731\" height=\"387\" usegridx usegridy showgridx showgridy gridx=\"16\" gridy=\"16\" border=\"0\" cellpadding=\"0\" cellspacing=\"0\">
            <tr height=\"386\">
                <td width=\"730\" height=\"386\"></td>
                <td width=\"1\" height=\"386\"><spacer type=\"block\" width=\"1\" height=\"386\"></td>
            </tr>
            <tr height=\"1\" cntrlrow>
                <td width=\"730\" height=\"1\"><spacer type=\"block\" width=\"730\" height=\"1\"></td>
                <td width=\"1\" height=\"1\"></td>
            </tr>
        </table>
        <p></p>
    </body>

</html> 
Avatar billede Keld Nielsen Professor
16. januar 2002 - 10:18 #11
...masser af tak for hjælpen !
Avatar billede ras2000 Nybegynder
16. januar 2002 - 10:27 #12
No problemo
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