Avatar billede justdoit Nybegynder
06. december 2002 - 19:07 Der er 10 kommentarer og
1 løsning

validering virker ikke ?

Hej, jeg fatter ikke så meget af javascript, så hvad er fejlen her???

function valider() {
var fejl = 0;
 
 
//Validere Fornavn
 
  if ( document.opret.fornavn.value.length == 0 ) {
      //dette sker hvis fornavn.value.length er lig 0
      alert("Husk at udfylde navn");
      fejl = fejl+1;
      document.opret.fornavn.focus(); // sætter cursor i feltet Fornavn
      return false;  // nu bliver der ikke submitted.
  } else {
      //dette sker hvis fornavn.value.length er større end 0
      if ( ! document.opret.fornavn.value.match( /^[a-zA-ZæøåÆØÅ -]+$/ )) {
          alert("Navn kan kun indeholde bogstaver");
          fejl = fejl+1;
          document.opret.fornavn.focus(); // sætter cursor i feltet navn
          return false;     
      }}
  if ( fejl == 0 ) {  // alt er ok
      return true;    // der bliver nu submitted.
  } else {            // noget er galt.
      return false;  // nu bliver der ikke submitted
  }}// denne sluttuborg afslutter funktionen   
  //evt kommentar til koder:
Avatar billede erikjacobsen Ekspert
06. december 2002 - 19:39 #1
Ser umiddelbart go' ud. Bliver funktionen kaldt? Hvordan
virker den ikke?
Avatar billede eagleeye Praktikant
06. december 2002 - 19:39 #2
Hvordan virker det ikke??

Har du husket at indsætte en onsubmit i form taggen:

<form action=".." ... onsubmit="return valider();">
Avatar billede erikjacobsen Ekspert
06. december 2002 - 19:41 #3
2 elektroniske sjæle - 1 tanke. Sæt gerne en

function valider() {
var fejl = 0;
  alert("Her kommer jeg");

...

for at se om den bliver kaldt.
Avatar billede justdoit Nybegynder
07. december 2002 - 11:38 #4
Hej, undskyld jeg ikke har svaret, men mit skod net var ikke så stabilt i går!

Mit formtag ser sådan ud:

<Form name="opret" method="post" onsubmit="return valider();" action="opret.asp?mode=opret">

Når jeg submitter, så er det somom den slet ikke laver en return valider(), får den går bare direkte til min Conn.execute, som ligger på samme side, som så laver en fejl!!!??
Avatar billede justdoit Nybegynder
07. december 2002 - 11:39 #5
...og her henter jeg mit js ind på siden:

<SCRIPT LANGUAGE="JavaScript1.2" SRC="css/validering_opret.js"></SCRIPT>
Avatar billede justdoit Nybegynder
07. december 2002 - 12:04 #6
Mit formfelt ser sådan ud:
<Input type="text" name="fornavn" class="soeg" value="<%=request("fornavn")%>">
Avatar billede Slettet bruger
07. december 2002 - 12:37 #7
Jeg har forenklet funktionen:

function valider(frm) {
if (frm.fornavn.value == "") {
alert("Husk at udfylde navn");
frm.fornavn.focus();
return false;
}
else if (!frm.fornavn.value.match(/^[a-zæøå \-]+$/i)) {
alert("Navn kan kun indeholde bogstaver");
frm.fornavn.focus();
return false;
}
return true;
}

Den kaldes med:

<form method="post" action="opret.asp?mode=opret" onSubmit="return valider(this);">

Og jeg har testet det, så hvis det ikke virker for dig, bliver du nødt til at smide et link. Læg det evt. ud på friserverplads.dk
Avatar billede erikjacobsen Ekspert
07. december 2002 - 13:05 #8
Hvordan submitter du? med en <input type="submit"> går
det da fint. Siger du selv submit() i JS så virker det ikke,
Avatar billede justdoit Nybegynder
07. december 2002 - 14:26 #9
phoenixv, jeg har lige testet dit og det virker!!
Men hvordan laver jeg validering på flere??

Dette virker ikke:

function valider(frm) {

//Validere fornavn
if (frm.fornavn.value == "") {
alert("Husk at udfylde navn");
frm.fornavn.focus();
return false;
}
else if (!frm.fornavn.value.match(/^[a-zæøå \-]+$/i)) {
alert("Navn kan kun indeholde bogstaver");
frm.fornavn.focus();
return false;
}

//Validere efternavn
if (frm.efternavn.value == "") {
alert("Husk at udfylde efternavn");
frm.efternavn.focus();
return false;
}
else if (!frm.efternavn.value.match(/^[a-zæøå \-]+$/i)) {
alert("Efternavn kan kun indeholde bogstaver");
frm.efternavn.focus();
return false;
}
return true;
}}
Avatar billede justdoit Nybegynder
07. december 2002 - 15:29 #10
Hvordan sætter jeg flere sammen - heeelp ;o)
Avatar billede Slettet bruger
08. december 2002 - 12:47 #11
Sådan her:

function valider(frm) {
if (frm.fornavn.value == "") {
alert("Husk at udfylde navn");
frm.fornavn.focus();
return false;
}
if (!frm.fornavn.value.match(/^[a-zæøå \-]+$/i)) {
alert("Navn kan kun indeholde bogstaver");
frm.fornavn.focus();
return false;
}
if (frm.efternavn.value == "") {
alert("Husk at udfylde efternavn");
frm.efternavn.focus();
return false;
}
if (!frm.efternavn.value.match(/^[a-zæøå \-]+$/i)) {
alert("Efternavn kan kun indeholde bogstaver");
frm.efternavn.focus();
return false;
}
return true;
}
Avatar billede Ny bruger Nybegynder

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.

Loading billede Opret Preview
Kategori
Vi tilbyder markedets bedste kurser inden for webudvikling

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester