webForumDet fria alternativet

fält ska ha exakt 8 siffror

JavaScriptur Javascript

11 svar · 436 visningar · startad av Calevan

Medlem sedan maj 20031 173 inlägg
Frågan#1

Hej!

Tänkte ha en kod som kollar att ett fält innehåller exakt 8 siffror och tänkte mig då något sånt här:

<script type="text/javascript">
 if(/\D{8}/.test(document.bekrafta.kundnummer.value)) {
  alert("Kundnummret måste innehålla exakt 8 siffror");
  return false; 
 }
</script>

men det gick inte... hur är det man ska göra?

tack!

Medlem sedan juni 200032 967 inlägg
#2
document.bekrafta.kundnummer.value.length!=8 {
Medlem sedan maj 20031 173 inlägg
#3

oj... var det så lätt. tänk vad man lär sig här på wF! :)

tack!

Medlem sedan juni 200032 967 inlägg
#4

Glöm inte att det ska vara parenteser runt villkoret, de måste ha försvunnit när jag postade mitt inlägg. ;)

Så här alltså:

if (document.bekrafta.kundnummer.value.length!=8) {
Medlem sedan mars 20023 561 inlägg
#5

Fast det där fångar ju bara 8 tecken, inte specifikt siffror.

Medlem sedan juni 200032 967 inlägg
#6

Josef skrev:

Fast det där fångar ju bara 8 tecken, inte specifikt siffror.

Det har du helt rätt i! Jag tror jag läste "tecken" istället för "siffror".

Sorry! Avmarkera genast mitt svar som slutgiltigt! ;)

Mvh

Medlem sedan sep. 2005156 inlägg
#7

otestat..osäker på syntaxen osv, men det borde gå att använda isNaN

if (!isNaN(document.bekrafta.kundnummer.value.length!=8)) {
Medlem sedan dec. 20025 483 inlägg
#8

Snarare

if (isNaN(document.bekrafta.kundnummer.value) || document.bekrafta.kundnummer.value.length != 8)

Eller

if (!/^\d{8}$/.test(document.bekrafta.kundnummer.value))
Medlem sedan maj 200010 687 inlägg
#9

Virtual: Det där har många fel. För det första så kollar du om True/False är numeriskt. Sen så släpper isNaN igenom decimaler, minustecken och även bokstäver i vissa fall.

Calevans regulära uttryck är en bra början, behöver bara modifieras lite.

<script type="text/javascript">
if (!/^\d{8}$/.test(document.bekrafta.kundnummer.value))
{
	alert("Kundnumret måste innehålla exakt 8 siffror");
	return false; 
}
</script>
Medlem sedan maj 200010 687 inlägg
#10

Peter S: :p

(alternativ två är då det vettiga sättet att göra det på)

Medlem sedan dec. 20025 483 inlägg
#11

Erik Juhlin skrev:

Peter S: :p

Weee! :D

Erik Juhlin skrev:

(alternativ två är då det vettiga sättet att göra det på)

Instämmer (y)

Medlem sedan maj 20031 173 inlägg
#12

fint! tack igen alla!

329 ms totalt · 3 externa anrop · v20260731065814-full.4bcf49fe
128 ms — hämta forumlista (db)
124 ms — hämta statistik (db)
200 ms — hämta tråd, inlägg och bilagor (db)