webForumDet fria alternativet

input med indatamask.

5 svar · 236 visningar · startad av room

roomMedlem sedan mars 2001270 inlägg
#1

Hejsan.. jag håller på med en sida där man ska skriva in organisationsnummer/personnummer i en inputruta. Jag vill ha en kontroll för att org.numret är ifyllt enligt standarden

XXXXXX-XXXX

Där X är en siffra mellan 0 och nio. Någon som har en idé om hur man kan lösa det?

Jag skulle även vilja ha en kontroll för om postnummer är ett nummer som börjar på 681.

Tacksam för svar...

JojoxxMedlem sedan juni 20004 306 inlägg
#2

Jag vill ha en kontroll för att org.numret är ifyllt enligt standarden

XXXXXX-XXXX

Där X är en siffra mellan 0 och nio. Någon som har en idé om hur man kan lösa det?

Varför nöja sig med det när det finns färdiga objekt som kollar mer än så? :)

Jag skulle även vilja ha en kontroll för om postnummer är ett nummer som börjar på 681.

Det kan se ut så här;

if(kollaPostnummer(nummret_som_du_vill_kolla)){
   // numret stämde
} else {
   // stämde inte
}

function kollaPostnummer(postnummer){
	return !!postnummer.match(/^681(\s?)(\d{2})$/)
}

"681 12" är ok, "68112" är ok.
"680 12" är inte ok, "681AB" är inte ok, "681681" är inte ok.

roomMedlem sedan mars 2001270 inlägg
#3

ang org. nr...

Hittade denna funktion för att kolla organisationsnummer. Den var väldigt bra men jag förstår inte riktigt hur jag ska koppla den till min funktion som kontrollerar resten av formuläret.

function organisationsnummer(nr){
	this.valid=false;
	if(!nr.match(/^(\d{1})(\d{5})\-(\d{4})$/)){ return false; }
	this.group=RegExp.$1;
	this.controldigits=RegExp.$3;
	this.alldigits=this.group+RegExp.$2+this.controldigits;
	if(this.alldigits.substring(2,3)<2){ return false }
	var nn="";
	for(var n=0;n<this.alldigits.length;n++){ nn+=((((n+1)%2)+1)*this.alldigits.substring(n,n+1)); }
	this.checksum=0;
	for(var n=0;n<nn.length;n++){ this.checksum+=nn.substring(n,n+1)*1; }
	this.valid=(this.checksum%10==0)?true:false;
}

Min funktion för att kontrollera forumulärets övriga fält ser ut så här:

function validate_form()
	{
		if (document.form1.antal.value == "")
				{
				alert('Du måste fylla i antal.');
				document.form1.antal.focus();
				return false;
				}
		if (document.form1.pris.value == "")
				{
				alert('Du måste fylla i pris.');
				document.form1.pris.focus();
				return false;
				}	

	document.form1.submit();
	}

Hur gör jag för att implementera organisationsnummer funktionen i mitt befintliga script? Inputrutan där man skriver organisationsnummer heter bet_orgnr

Tacksam för svar...

JojoxxMedlem sedan juni 20004 306 inlägg
#4

var myOrgNr=[b]new[/b] organisationsnummer(document.form1.antal.bet_orgnr.value);
if(!myOrgNr.valid){
   alert('Fel organisationsnummer');
   document.form1.bet_orgnr.focus();
   return false;
}
roomMedlem sedan mars 2001270 inlägg
#5

nu är jag tjatig kanske..

Hej igen Jojoxx och alla andra...

Nu blir det fel... När jag skriver fel organisationsnummer så kommer dialogrutan upp, men när jag skriver ett rätt orgnummer så får jag följande javascript-felmeddelande:

'valid' är null eller inte ett objekt

Tacksam för mer hjälp.

JojoxxMedlem sedan juni 20004 306 inlägg
#6

Mitt fel. Jag missade nyckelordet "new". Se exempet nu.

Genererad på 372 ms · cache AV · v20260730165559-full.f96bc7eb