kenneth <ke@automacon.dk> writes:
> Jeg har nu forgæves prøvet at få en valideringaf et text input
> felt til at virke.
>
> Scriptet jeg har brugt er det som ligger på HTML.dk's side.
> <script type="text/javascript">
>
> <!-- Start
HTML-kommentarer er ikke nødvendige.
> <form action="" method="post" onsubmit="validering();return
> false;">
Det er ikke nogen særlig smart måde at kalde et valideringsscript.
Jeg foretrækker klart:
<form ... onsubmit="return validering(this);">
Derved får funktionen formen forærende, og den kan selv signalere om
formen må submittes. Det udgår det også kedelige problem folk tit får
ved kald af form.submit når de har lavet en knap med navn "submit" :).
> <input type="text" name="tekstfeltnavn">
> <input type="submit" value="Klik her for at validere">
> </form>
> Jeg har kigget på nogle løsninger og har prøvet utallige gange at
> få det til at virke.....uden held.
> function validering()
> {
> error = 0;
> String tekst = "";
Syntaxfejl. Man erklærer variabel med "var" i Javascript, ikke typen
som i Java.
> tekst = (document.forms[0].tekstfeltnavn.value);
> int antal;
ditto.
> antal=tekst.lenght();
og "length" staves sådan (jeg laver den tit selv, så jeg er ved at
have trænet mig til at se det :) og er en egenskab, ikke en funktion.
> Det skal siges at jeg er totalt ny begynder i java, så det er
> måske en umulighed det jeg har skrevet.
Det var tæt på Java, men den her gruppe handler ikke om Java, men om
Javascript, som er et helt andet og urelateret sprog.
> Ud over dette problem kunne jeg også godt tænke mig en mulighed
> for at checke om det er integer der er i et felt.
Må der være fortegn?
> Håber der er nogle der kan svare på mit spørgsmål.
<script type="text/javascript">
function validate(form) {
var antal = form.elements['tekstfeltnavn'].value;
if (!/^\s*\d{3,}\s*$/.test(antal)) {
alert("Der skal indtastes mindst tre cifre, og kun cifre");
return false;
}
return true;
}
</script>
Her bruger jeg et regulært udtryk til at teste at der er mindst
tre cifre og ikke andet end cifre (og evt. mellemrum før og efter, det
er best at tillade det fordi brugeren har svært ved at opdage det).
Den kaldes så med
<form ... onsubmit="return validate(this)">
/L
--
Lasse Reichstein Nielsen - lrn@hotpop.com
DHTML Death Colors: <URL:
http://www.infimum.dk/HTML/rasterTriangleDOM.html>
'Faith without judgement merely degrades the spirit divine.'