Avatar billede clausjul Nybegynder
23. juni 2003 - 15:12 Der er 3 kommentarer og
1 løsning

Formattering af tal

Hej

Er der en glimerede javascript som kan formattere tal til dansk format?

F.eks. når jeg taster 1000, så skal den gerne kunne ændre til 1.000,00. Eller hvis jeg taster 10000.15, så skal den kunne ændre til 10.000,15 osv. ??
Avatar billede edutasia Nybegynder
23. juni 2003 - 16:00 #1
function numToDKString(num) {
  var strVal = num.toString();
  strVal = strVal.replace(/\./,',');
  var resVal = '';
  var intCount = 3;
  for (var i=strVal.length-1; i >= 0; i--) {
    resVal = strVal.charAt(i) + resVal;
    intCount--;
    if (strVal.charAt(i) == ',') intCount = 3;
    if (intCount == 0 && i != 0) {
      resVal = '.' + resVal;
        intCount = 3;
        }
    }
  return(resVal);
}
Avatar billede clausjul Nybegynder
24. juni 2003 - 09:40 #2
Hm, jeg havde ønsket mig noget mere.... Med denne kode, når jeg skriver 1,000.00 så ændres det til 1,.000,00 - den skal kunne klare alle situationer, f.eks.
1000 = 1.000,00
1,000.15 = 1.000,15
a1.000.15 = 1.000,15

Altså skal feltet "renses" til at give den rigtige format.
Avatar billede edutasia Nybegynder
24. juni 2003 - 10:58 #3
Ja, det kunne bare være en lækker funktion, men prøv engang at fundere lidt mere over, hvad det egentlig er, du beder om.

I det sidste eksempel skal funktionen kunne læse brugerens tanker for at kunne vurdere, at det sidste punktum skal være et komma, mens det første fortsat skal være et punktum.

Jeg vil derfor anbefale dig at gøre følgende:

1. Lav en funktion, der validerer på, om der er indtastet bogstaver. Hvis der er, så vis en fejlmeddelelse og/eller fjern alle bogstaver automatisk med en regular expression.

2. Lav en funktion, der checker, hvor mange decimaltegn, der er indtastet. Hvis der er flere end et - så vis en fejlmeddelelse.

3. Nu er du klar til at validere selve tallet, lave decimaltegnet om til komma og indsætte punktum for hver 1.000.
Avatar billede clausjul Nybegynder
25. juni 2003 - 09:05 #4
Tak for dit svar - Det hjælper mig videre ;-)
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