Avatar billede no_doubt Nybegynder
24. juli 2008 - 17:34 Der er 26 kommentarer og
1 løsning

accepter betingelser

Hvordan får jeg flettet ind i nedenstående script at afkrysningsboksen SKAL være afkrydset??

<script type="text/javascript">
function validering(f){
  var inps = f.elements,chckd = false;
  for(i=0,im=inps.length;im>i;i++)
    chckd = chckd || inps[i].type == "checkbox" && inps[i].checked;
  if(!chckd){
    alert("Du skal krydse mindst en boks af");
    return false;
  }
  if(f.navn.value=='')    {       
    alert('Du skal angive navn!');
    f.navn.focus();
    return false;
  }
  if(f.adresse.value=='')    {       
    alert('Du skal angive adresse!');
    f.adresse.focus();
    return false;
  }
  if(f.tlf.value=='')    {       
    alert('Du skal angive et tlf. nummer!');
    f.tlf.focus();
    return false;
  }
  var t = "\\wáàãäâæåçéèêëìíîïñòóôõöøùúûüýÿ";
  var regexp = new RegExp("^["+t+"\\.\\-\\+]*@["+t+"]["+t+"\\.\\-]*\\.["+t+"]{2}["+t+"\\.\\-\\/]*$","i");
  tekst=f.mail.value.toLowerCase();
  if (!regexp.test(tekst)||tekst.match(/\.\.|\.@|-@|--/)){
      alert ("Du skal angive en gyldig e-mail adresse");
      f.mail.focus();
      return false;
  }
  if(f.leveringsadresse.value=='')    {       
    alert('Du skal angive en leveringsadresse!');
    f.leveringsadresse.focus();
    return false;
  }
  return true;
}
</script>
Avatar billede w13 Novice
24. juli 2008 - 17:41 #1
Hvilken afkrydsningsboks? :) (Altså hvad hedder den. Er der f.eks. id="accepter" på?)
Avatar billede no_doubt Nybegynder
24. juli 2008 - 17:41 #2
Ellers kan der da komme det :-)

<input type="checkbox" name="betingelser" value="ON">
Avatar billede w13 Novice
24. juli 2008 - 17:56 #3
Så kan du tjekke med:

<script type="text/javascript">
function validering(f){
  var inps = f.elements, chckd = false;
  for(i=0,im=inps.length;im>i;i++)
    chckd = chckd || inps[i].type == "checkbox" && inps[i].checked;
  if(!chckd){
    alert("Du skal krydse mindst en boks af");
    return false;
  }
  if(f.navn.value==''){
    alert('Du skal angive navn!');
    f.navn.focus();
    return false;
  }
  if(f.adresse.value==''){
    alert('Du skal angive adresse!');
    f.adresse.focus();
    return false;
  }
  if(f.tlf.value==''){
    alert('Du skal angive et tlf. nummer!');
    f.tlf.focus();
    return false;
  }
  var t = "\\wáàãäâæåçéèêëìíîïñòóôõöøùúûüýÿ";
  var regexp = new RegExp("^["+t+"\\.\\-\\+]*@["+t+"]["+t+"\\.\\-]*\\.["+t+"]{2}["+t+"\\.\\-\\/]*$","i");
  tekst=f.mail.value.toLowerCase();
  if (!regexp.test(tekst)||tekst.match(/\.\.|\.@|-@|--/)){
      alert ("Du skal angive en gyldig e-mail adresse");
      f.mail.focus();
      return false;
  }
  if(f.leveringsadresse.value=='')    {       
    alert('Du skal angive en leveringsadresse!');
    f.leveringsadresse.focus();
    return false;
  }
  if(f.betingelser.checked){
    alert('Du skal acceptere betingelserne!');
    f.betingelser.focus();
    return false;
  }
  return true;
}
</script>
Avatar billede no_doubt Nybegynder
24. juli 2008 - 18:00 #4
den smutter jeg lige igennem uden at krydse af
Avatar billede w13 Novice
24. juli 2008 - 18:02 #5
if(f.betingelser.checked){
    alert('Du skal acceptere betingelserne!');
    f.betingelser.focus();
    return false;
  }
skal være:
  if(!f.betingelser.checked){
    alert('Du skal acceptere betingelserne!');
    f.betingelser.focus();
    return false;
  }

:)
Avatar billede w13 Novice
24. juli 2008 - 18:02 #6
Den nuværende kode burde brokke sig, hvis du krydser den af. :P
Avatar billede no_doubt Nybegynder
24. juli 2008 - 18:05 #7
Og hvis det skal være en prik istedet...for nu konflikterne den desværre med den øverste del i valideringen

<input type="radio" value="V1" name="R1">
Avatar billede w13 Novice
24. juli 2008 - 18:07 #8
Konflikter den? Pga. min kode eller hvad? Følger dig ikke helt.

En radio-button kræver jo 2. Ellers kan du ikke fjerne den igen.

Accepter: Ja <input type="radio" value="1" name="betingelser">
Nej <input type="radio" value="0" name="betingelser">

Og så kan du tjekke med:

  if(f.betingelser.value!="1"){
    alert('Du skal acceptere betingelserne!');
    f.betingelser.focus();
    return false;
  }
Avatar billede no_doubt Nybegynder
24. juli 2008 - 18:12 #9
Den melder fejl og submitter så alligevel
Avatar billede no_doubt Nybegynder
24. juli 2008 - 18:13 #10
Og det en ligemeget om jeg vælger ja eller nej
Avatar billede w13 Novice
24. juli 2008 - 18:19 #11
Melder den fejl? Så må du lige skrive, hvad den siger er galt. Det skal vi jo bruge til at rette fejlen med.
Avatar billede no_doubt Nybegynder
24. juli 2008 - 18:21 #12
Den melder alerten, og fortsætter så... med at lagre data'erne
Avatar billede w13 Novice
24. juli 2008 - 18:22 #13
Så den skriver "Du skal acceptere betingelserne"? :S

Kan jeg lige se, hvordan din kode ser ud nu, eller endnu bedre: et link til siden måske?
Avatar billede no_doubt Nybegynder
24. juli 2008 - 18:24 #14
er du på msn ?
Avatar billede w13 Novice
24. juli 2008 - 18:26 #15
Du ka' evt. sende linket til w13 (at) ofir (dot) dk
Avatar billede w13 Novice
24. juli 2008 - 18:26 #16
Det er min ikke-hemmelige mail. :)
Avatar billede no_doubt Nybegynder
24. juli 2008 - 18:29 #17
sendt
Avatar billede no_doubt Nybegynder
24. juli 2008 - 21:12 #18
Heeelp somebody ?
Avatar billede w13 Novice
24. juli 2008 - 23:25 #19
Jaja, jeg prøver at se, om jeg kan få tid i morgen engang, når jeg ikke har andre vigtige ting at lave. ;)
Avatar billede w13 Novice
25. juli 2008 - 10:14 #20
Du har HTML, HEAD og BODY 2 gange på din side, hvilket jo ikke kan lade sig gøre. Selvom det nok ikke er fejlen, må du hellere fjerne det, for at vi kan regne med resultatet.

Derefter kan du prøve at fjerne:
f.betingelser.focus();
Avatar billede w13 Novice
25. juli 2008 - 10:15 #21
Og jeg ville nok sætte checked="checked" på Nej-radioknappen som standard.
Avatar billede no_doubt Nybegynder
25. juli 2008 - 10:29 #22
Nu acceptere den ikke hverken Ja eller Nej men submitter så heller ikke (FF)
Avatar billede w13 Novice
25. juli 2008 - 10:32 #23
Der står stadig:

<html>

<head>
<meta http-equiv="Content-Type" content="text/html; charset=windows-1252">
<title></title>
</head>

og:

</body>
</html>

to gange.
Avatar billede w13 Novice
25. juli 2008 - 10:34 #24
Prøv at ændre:

if(f.betingelser.value!="1"){

til:

if(f.betingelser[1].checked){
Avatar billede w13 Novice
25. juli 2008 - 10:34 #25
Og så kan du faktisk helt fjerne value på begge radiobuttons.
Avatar billede no_doubt Nybegynder
25. juli 2008 - 10:55 #26
Så dutter det.
Avatar billede w13 Novice
25. juli 2008 - 13:14 #27
Godt! Og tak for point! ;)
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