Avatar billede kak Nybegynder
18. oktober 2004 - 15:32 Der er 3 kommentarer og
1 løsning

Komma i tal

Jeg har en form, hvor brugeren kan vælge antal, og derefter automatisk kan se en totalpris på antallet.

Jeg vil gerne vise komma i tallet, i stedet for punktum, men javascript skal jo bruge punktum til at regne med. Når jeg henter værdien gør jeg således:
var tTot = document.all.totP.innerHTML;
tTot = tTot.replace(",",".");

Det virker fint, og jeg kan tallet kan bruges til at lave udregninger med.

Men når jeg vil skrive den nye total i feltet document.all.totP.innerHTML går det galt.
Jeg bruger tTot = tTot.replace(".",","); men det virker ikke. Jeg har forsøgt at konvertere tTot til et streng, men det kan jeg åbenbart ikke få til at virke.

Så er der en god løsning på dette?

Desuden vil jeg meget gerne vise 2 decimaler, og det kræver vist også en konvertering til streng, så vidt jeg har fundet frem til. Er der en "let" funktion til det?
Avatar billede baitianlong Nybegynder
18. oktober 2004 - 15:43 #1
<script>
tal = 5.35334543;
talmed2dec = Math.round(tal * 100) / 100;
alert(talmed2dec);
tal = tal+"";
talmedkomma = tal.split(".").join(",");
alert(talmedkomma);
talmedpunktum = tal.split(",").join(".");
alert(talmedpunktum);
</script>

:)
Avatar billede kak Nybegynder
18. oktober 2004 - 15:51 #2
Perfekt! Tak for det ;-)
Avatar billede baitianlong Nybegynder
18. oktober 2004 - 15:52 #3
Selv tak :)
Avatar billede roenving Novice
18. oktober 2004 - 15:54 #4
Og for altid at have 2 decimaler bruger jeg disse funktioner (som sikkert kan forbedres !-)

function makeNumber(tal){
  tal = ""+tal;
  if(!tal.match(/^[\d\.\,]+$/))return 0;
  return parseFloat(tal.replace(/,/,"."))
}
function afrund(tal){
  if(isNaN(tal))return "0,00";
  tal = ""+(Math.round(tal*100))/100;
  punktum = tal.indexOf(".");
  if (punktum==-1)return tal+".00";
  if (tal.length-punktum==3)return tal;
  else return tal+"0";
}
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

IT-JOB