04. maj 2004 - 01:48
Der er
17 kommentarer og 1 løsning
et lidt kompliceret script
Hej :-) Jeg skal bruge et js som validere et text felt - dvs. det må kun indeholde hex værdier ( mener at der 0-9 og a-g )
Annonceindlæg fra SuperOffice
En enkelt hex-værdi eller kan der være flere ?-)
<script type="text/javascript"> function valHex(vaerdi){ if(!vaerdi.match(/^[\da-z]{2}$/)){//een enkelt to-'cifret' hex-værdi alert('Ikke en gyldig hex-værdi'); } } </script>
- roenving Der må gerne være flere , den skal faktisk indeholde 16 tegn - r der mulighed og også at tjekke dette ? valideringen skal bruge til kode bestilling
Så skal 2-tallet ændres til 16: <script type="text/javascript"> function valHex(vaerdi){ if(!vaerdi.match(/^[\da-f]{16}$/i)){ alert('Ikke en gyldig hex-værdi'); } } </script> -- og hov, jeg havde sat et z ind, det skal jo være et f ... og så har jeg også ændret den, så den også accepterer store bogstaver som hex-værdier !-) -- og så skal du vel bruge den i en-eller-anden kontekst, så den måske kan sættes ind på en bedre måde ...
- roenving Hvordan skriver jeg dit script ind i denne allerede eks. kode ? function tjek_kodebestilling(form) { if (form.telefon.value == "") { alert("Husk at indtaste dit telefon nr. !") return false } if (form.navn.value == "") { alert("Husk at indtaste dit navn !") return false } if (form.svar.value == "") { alert("Husk at vælge hvordan du ønsker svar !") return false } if (form.kode.value == "") { alert("Husk at indtaste en kode !") return false } return true;}
Det er koden, som skal være et 16 'cifre' langt hexadecimalt tal ?-) if (form.kode.value.match(/^[\da-f]{16}$/i)){ alert("Husk at indtaste en kode med 16 tegn !") return false }
- roeving ja koden må max vare på 16 tal eller/og bogstaver og den skal være udfyldt -dvs. ikke lig nul. har prøvet din kode og den virker ik. der sker ik noget - dvs. den tjekker ik indhold , den går bare vidre ( hvis du forstår )
- reoving Har afsat flere points , det er vist kun rimligt - hvis det kommer til at virke :-)
Max. 16 tegn ?-) hvad er så minimum ... -- og jeg kan se, at jeg har glemt et !-tegn ... if (!form.kode.value.match(/^[\da-f]{1,16}$/i)){//her er minimum 1 tegn og max. 16 ... alert("Husk at indtaste en kode med max. 16 tegn !") return false }
- roenving ikke max 16 teng , feltet "kode" skal indeholde 16 i hex værdi
Koden for 16 i hexadecimal notation er jo: '10', så kan du vel sammenligne med det ?-)
- roenving Sådan her: <input name="kode" type="text" class="text_felt" id="kode" size="16" maxlength="16"> Indholdet af dette felt skal være en hex værdi, men en længte på 16 tegn ( hex værdien skal ik være 16 :-) )
Det er da det roenving 04/05-2004 21:59:42 gør ?-)
- roenving Det virker ik - hvis jeg indtaster en "forker" værdi forsættes bare vidre til næste side ! ( hvis du forstår )
Uff ... Jeg glemte i min hast at gentage kommentaren i 04/05-2004 23:31:01 !-) if (!form.kode.value.match(/^[\da-f]{16}$/i)){ alert("Husk at indtaste en kode med 16 tegn !") return false } -- det var not-tegnet ! som ikke var med ...
- roenving Jubii nu virker det :-) drop lige et svar
Vi tilbyder markedets bedste kurser inden for webudvikling