Avatar billede kr-data Nybegynder
28. februar 2005 - 16:38 Der er 7 kommentarer og
3 løsninger

Tusindetals-separator og kontrol af indhold i en text-boks

Hej der

Jeg er ikke så meget inde i Javascript, så jeg vil gerne høre om jeg ikke kan få fikset 2 meget simple scripts.

1) Et script der laver tusindtals-separator, så der altså står 100.000 i stedet for 100000. Det skal bare være ud fra en variabel der sættes i starten af scriptet, og det skal bare smides ud som alm. tekst.

2) Kontrol af en text-box, hvor der skal ske to kontrollerer, at der er indhold i den, før man kan trykke submit. Derudover, så skal den checke, at der ikke er mere end 15 tegn i kassen.


Derudover, så ville jeg være glad, hvis jeg fik sendt et link til en gratis tutorial, som er dybdeggående. Om det er engelsk eller dansk er lige meget.
Avatar billede jonashn Nybegynder
28. februar 2005 - 16:50 #1
hermed et link: http://www.echoecho.com/dk
Avatar billede elskermad.dk Nybegynder
28. februar 2005 - 16:50 #2
2) utestet men burde virke!

<script>
  function tjek(f) {
      if (f.tekst.value=='') {
        alert('Du skal skrive noget tekst');
        return false;
      }
      else if (f.tekst.value.length>15) {
        alert('Der må max skrives 15 tegn!');
        return false;
      }
      else {
        alert('OK');
        return true;
      }
  }
</script>

<form name='test' method='post' action='side.html' onSubmit='return tjek(this)'>
  <input type='text' name='tekst'><br>
  <input type='submit' name='submit' value='ok!'>
</form>
Avatar billede kr-data Nybegynder
28. februar 2005 - 16:57 #3
Kan ikke teste det lige med det samme, men får det gjort snarest muligt. På forhånd tak.
Avatar billede roenving Novice
01. marts 2005 - 07:45 #4
Det med tusindtal-separatoren er lidt tricky, men var det phoenixv, som fandt en smart algoritme:

var tal ="1235689789456";
tal = tal.split("").reverse();
tal = tal.join("").replace(/(\d{3})/g,"$1.");
tal = tal.split("").reverse();
tal = tal.join("");
if(tal.indexOf(".")==0)tal = tal.substring(1);
alert(tal);

-- og i elskermads behøves den sidste else ikke:

<script type="text/javascript">
  function tjek(f) {
      if (f.tekst.value=='') {
        alert('Du skal skrive noget tekst');
        return false;
      }
      else if (f.tekst.value.length>15) {
        alert('Der må max skrives 15 tegn!');
        return false;
      }
      //alert('OK');
      return true;
  }
</script>
Avatar billede kr-data Nybegynder
01. marts 2005 - 16:04 #5
Perfekt :D

jonashn> 10 pts for linket
elskermad.dk> 25 pts for dit svar
roenving> 25 pts for dit svar
Så hvis I alle tre lige smider svar, så er det bare smukt

Ved godt, at det er en lidt træls fordeling, men gider ikke til at regne i alle mulige undlige tal. Hvis der er nogen der føler, at jeg snyder dem, så sig til, for så kan jeg godt revurdere, da det bare lige er et hurtigt skøn
Avatar billede elskermad.dk Nybegynder
01. marts 2005 - 16:34 #6
jeg er skam helt ligeglad med point-fordeling! glæden ved hjælpen/takket for svaret tæller mindst lige så meget :)
Avatar billede jonashn Nybegynder
01. marts 2005 - 19:21 #7
Hermed svar- og tak for point!
Avatar billede kr-data Nybegynder
01. marts 2005 - 20:08 #8
Ok :D Så vil jeg glæde dig lidt mere ved at sige 1000 tak :) for det var dejligt, lige at få løst det her :D

Jeg savner dog stadig fra Roenving :S
Avatar billede roenving Novice
02. marts 2005 - 14:56 #9
Velbekomme '-)
Avatar billede roenving Novice
03. marts 2005 - 11:56 #10
-- og tak for point ;~}
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