26. august 2002 - 17:57
Der er
8 kommentarer og 1 løsning
RegExp
Hey... Skal bruge et RegExp der tjekker et form-input. Den skal returnere True, hvis inputtet opfylder følgende : karakter a-z (ikke æøå), samt at gerne der må være et, eller flere bindestreger... fx, skal den returnere True ved dette: brian-holmgaard, men False ved dette : brian.holmgård Har selv forsøgt, men det virker nada : var RegExpString = new RegExp("/[A-Z][a-z][0-9]/"); Det er i JS, bare så i ved det... /Brian!
Annonceindlæg fra Admin By Request
26. august 2002 - 17:59
#1
prøv med if(!str.match(/^[a-z-]+$/i)) { return true; } else { return false; } strengen der valideres hedder her str
26. august 2002 - 18:02
#2
Vil gerne du sætter den op som en funktion... så er det superb
26. august 2002 - 18:04
#3
funktion kaldmignogetfornuftigt(str) { if(!str.match(/^[a-z-]+$/i)) { return true; } else { return false; } } omdøb evt. funktionen :) *g*
26. august 2002 - 18:13
#4
Hmm, virker sgu ikke helt som det skal : her er min kode ; <script language="JavaScript" type="text/javascript"> function chkName(str) { if(!str.match(/^[a-z-]+$/i)) { return true; } else { return false; } } function chkFrm() { var objfrm = document.all.frmUrl; if (!chkName(objfrm.strName.value) || objfrm.strName.value == '') { alert('Adressen : www.' + objfrm.strName.value + objfrm.topLevel.value + ' er ikke gyldig!'); objfrm.strName.focus(); return false; } else { objfrm.submit(); } } </script> </head> <body style="background-color : #dddddd ;"> <form action="testurl.asp?mode=ok" method="post" name="frmUrl"> www.<input type="text" name="strName" /> <select name="topLevel"> <option value=".dk">.dk</option> <option value=".com">.com</option> <option value=".net">.net</option> </select> <input type="button" name="test" value="test url" onclick="chkFrm();" /> </form> <% If Request.QueryString("mode") = "ok" Then Response.Write("Adressen : www." & Request.Form("strName") & Request.Form("topLevel") & " er godkendt<br /><br /><a href=""testurl.asp"">Test igen?</a>") End If %>
26. august 2002 - 18:18
#5
var lige et true/false der vendte forkert - prøv med function chkName(str) { if(str.match(/^[a-z-]+$/i)) { return true; } else { return false; } }
26. august 2002 - 18:19
#6
Den må kun acceptere følgende karakterer (rækkefølge ligegyldig og antal tegn ligegyldig) : abcdefghijklmnopqrstuvxyz (a-z) ABCDEFGHIJKLMNOPQRSTUVXYZ (A-Z) 0123456789 (0-9) - (bindestreg) alle andre brugte karakterer, er ulovlige!
26. august 2002 - 18:20
#7
hmm, yeah - men virker stadig ikke optimalt... den returnerer fx ikke fejl ved æ, eller tegnet < ... og de tegn må den ikke indeholde...
26. august 2002 - 18:22
#8
0-9 er tilføjet, jeg har testet med æøå og bliver afvist, < bliver ligeledes afvist... Koden jeg tester med er <script language="JavaScript" type="text/javascript"> function chkName(str) { if(str.match(/^[a-z0-9-]+$/i)) { return true; } else { return false; } } function chkFrm() { var objfrm = document.all.frmUrl; if (!chkName(objfrm.strName.value) || objfrm.strName.value == '') { alert('Adressen : www.' + objfrm.strName.value + objfrm.topLevel.value + ' er ikke gyldig!'); objfrm.strName.focus(); return false; } else { objfrm.submit(); } } </script> </head> <body style="background-color : #dddddd ;"> <form action="testurl.asp?mode=ok" method="post" name="frmUrl"> www.<input type="text" name="strName" /> <select name="topLevel"> <option value=".dk">.dk</option> <option value=".com">.com</option> <option value=".net">.net</option> </select> <input type="button" name="test" value="test url" onclick="chkFrm();" /> </form>
26. august 2002 - 18:32
#9
tak for hjælpen... nu virker mit også;)
Vi tilbyder markedets bedste kurser inden for webudvikling