15. oktober 2001 - 08:49Der er
8 kommentarer og 1 løsning
Validering af felter virker ikke
Hej
Jeg kan ikke få denne koden til at virke optimalt. Først tjekkes værdien i <select> cField. Derefter må der kun indtastes henholdvis tal eller bogstaver/space. Men indtastes eksempelvis et tal og et bogstav, godkendes det. Hvad kan jeg bruge i stedet for eks. ((cField ==\'Leverandør\' || cField==\'Varenavn\') && (!(tField.match(let))))
Her er hele koden:
num= /[0-9]/ let = /[a-zA-Z+æøåÆØÅ+\' \']/
function CheckFields() { cField=VisFundneVarer.Soegevalg.value; tField=VisFundneVarer.Soegeinput.value; if (tField ==\'\'){ alert(\'Feltet skal udfyldes.\'); VisFundneVarer.Soegeinput.focus(); VisFundneVarer.Soegeinput.select(); event.returnValue=false;
} else {
if ((cField ==\'Varenr\' || cField==\'Pris\') && (!(tField.match(num)))){ alert(\'Feltet skal udfyldes med tal.\'); VisFundneVarer.Soegeinput.focus(); VisFundneVarer.Soegeinput.select(); event.returnValue=false;
} else {
if ((cField ==\'Leverandør\' || cField==\'Varenavn\') && (!(tField.match(let)))){ alert(\'Feltet skal udfyldes med bogstaver.\'); VisFundneVarer.Soegeinput.focus(); VisFundneVarer.Soegeinput.select(); event.returnValue=false;
Der bliver investeret massivt i AI. Teknologien er mere tilgængelig end nogensinde, og ambitionerne er høje. Alligevel oplever mange virksomheder, at resultaterne udebliver.
Nej, det har jeg lige prøvet. Der skal vel på en eller måde søges i strengen. Noget med alle forekomster der er forskellige fra \'let\' / \'num\'........ Kan man bruge noget aller tField.match(let)!=>1. Jeg er ikke lige en haj til dette...
.match( regexp ) leder blot efter en match. et enkelt ciffer er nok for num, så kan resten være hvad det vil
num= /^[0-9]+$/; let = /^[a-zA-Z+æøåÆØÅ ]+$/;
jeg har indsat 3 nye tegn ^ begyndelsen af input [0-9] et ciffer (som du allerede har det) + foranstpende tegn kan gentages så mange gange det skal være $ slutningen af input.
med ^ og $ vil match() kun give sand hvis hele indholdet af feltet passer med + vil match() kikke efter nere end eet tegn i strengen der matcher
i tet har jeg fjernet +\' + (for at tilføje et blanktegn til de mulige skriver du blot blanktegnet.)
Hvis du laver de ændringer i dine to RegExp\'s vil jeg tro det virker.
Ups: fjernet +\' + skulle være fjernet +\' \' Det er muligt det +-tegn foran æøå også bør væk. som det står her vil det illade at der er +-tegn i strengen.
Tak for hjælpen - JakobA får point, da dette var løsningen.
Ha\' en god dag - lars-k
Synes godt om
Ny brugerNybegynder
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.