Avatar billede spidr Nybegynder
07. januar 2004 - 18:00 Der er 5 kommentarer og
1 løsning

Validerings script

Ja jeg bruger så følgende kode:

<SCRIPT text="text/JavaScript">
<!--

function validate(f)
{
// checkpoint-boolean-switch-ting:
var ok = "ja";

// navnene på de felter der *SKAL* udfyldes:
var skal_udfyldes = new Array("Q1", "Q2", "Q3", "Q4", "Q5", "Q6", "Q7", "Q8", "Q9", "Q10", "Q11", "Q12", "Q13", "Q14", "Q15", "Q16", "Q17", "Q18", "Q19", "Q21", "Q22", "Q23", "Q24", "Q25", "Q26", "Q27", "Q28", "Q29", "Q30");

el = f.elements;
for(var i=0;i<el.length - 1;i++){
  for (var a=0; a < skal_udfyldes.length; a++) {
    if ( (el[i].name == skal_udfyldes[a]) && (el[i].value.length == 0) && (el[i].type == "text", "hidden") ) {
      ok = "nej";
    }
  }
}

if (ok == "nej") {
  document.getElementById("msg").innerHTML = " <b>Du skal svare på alle spørgsmål!</b>";
  return false;
} else {
  return true;
}

}
//-->
</SCRIPT>
Det den gør er at den opdatere en tekst jeg har lige ved siden af send knappen, hvor dne skriver hvis man ikke har udfyldt alle felterne, problemet med den er at man ikke kan se HVOR man har glæmt at udfylde et felt, og ville høre om nogen kunne ændre lidt i det, så man evt fik avide VILKET spørgsmål man manglede at svare på og evt. om man kunne gøre så den også tjekkede for @ i Q3, altså lave dem lidt mere "individuelle" ?
Avatar billede skovenborg Nybegynder
07. januar 2004 - 23:26 #1
Sådan ?-)

function validate(f)
{
// checkpoint-boolean-switch-ting:
var ok = true;

// navnene på de felter der *SKAL* udfyldes:
var skal_udfyldes = new Array("Q1", "Q2", "Q3", "Q4", "Q5", "Q6", "Q7", "Q8", "Q9", "Q10", "Q11", "Q12", "Q13", "Q14", "Q15", "Q16", "Q17", "Q18", "Q19", "Q21", "Q22", "Q23", "Q24", "Q25", "Q26", "Q27", "Q28", "Q29", "Q30");
var ikke_udfyldt = new Array();
el = f.elements;
for(var i=0;i<el.length - 1;i++){
  for (var a=0; a < skal_udfyldes.length; a++) {
    if ( (el[i].name == skal_udfyldes[a]) && (el[i].value.length == 0) && (el[i].type == "text", "hidden") ) {
      ok = false;
      ikke_udfyldt[ikke.udfyldt.length] = " <b>Du skal svare på spørgsmål "+skal_udfyldes[i].substr(1)+"</b><br />";
    }
  }
}

if (ok == false) {
  for (i=0;i<ikke_udfyldt.length)
  {
      document.getElementById("msg").innerHTML += ikke_udfyldt[i];
  }
  return false;
} else {
  return true;
}

}

Jeg har ikke testet det (kender heller ikke din form), men det burde være noget i den stil du søger. Læg mærke til at jeg har ændret var ok til at være en rigtig boolean (true og false). Det gør det lidt lettere at holde styr på synes jeg selv.
Avatar billede roenving Novice
08. januar 2004 - 01:59 #2
Øeh, den liste, som bruges til "text", "hidden" kan jeg ikke få til at virke ...

Javascriptsk skal det gøres med to betingelser:

(el[i].type == "text"||el[i].type == "hidden")

>>skovenborg

+= i innerHTML ?-)

-- er det ike nemmere at samle det i en string:

ikke_udfyldt += skal_udfyldes[i].substr(1)+"</b><br />";


-- en anelse lettere:

if (!ok) {//browseren skal ikke først evaluere ok og derefter om resultatet er false ...

-- og så ville jeg opsamle hvilket spørgsmål, som var det første ubesvarede, og så sætte fokus på det:

      ok = false;
      if(!fokus)fokus = el[i];

...

  fokus.focus();
  return false;
}
Avatar billede skovenborg Nybegynder
08. januar 2004 - 16:51 #3
roenving >> Jo, måske er det lettere at samle det i en streng (i hvert fald hurtigere). Jeg var lidt hurtig denne gang ;-)
Avatar billede skovenborg Nybegynder
14. februar 2004 - 16:35 #4
ohøj hr. spidr --- kunne vi ikke få lidt respons her ;-)
Avatar billede spidr Nybegynder
27. juni 2004 - 21:41 #5
Lukket på grund af intet svar..
Avatar billede skovenborg Nybegynder
27. juni 2004 - 21:58 #6
kunne du ikke bruge nogle af løsningerne??? Ellers skulle du bare have sagt til eller bedt om svar hvis du har fået den løsning du søgte.
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

IT-JOB

Forsvarsministeriets Materiel- og Indkøbsstyrelse

Solution Manager til Cyberdivisionen

Forsvarets Efterretningstjeneste

IT-direktør til Forsvarets Efterretningstjeneste

Capgemini Danmark A/S

Client Partner