Avatar billede MadsDue Nybegynder
25. maj 2011 - 19:53 Der er 6 kommentarer og
1 løsning

Hjælp til alert med input text="radio"

Hej

Jeg har lavet følgende:

<!DOCTYPE html>
<html>
<head>
    <meta http-equiv="content-type" content="text/html; charset=utf-8"/>
    <title></title>
    <style type="text/css">
    </style>
    <script type="text/javascript">
    function validate(){
        frm = document.getElementById('frm');
        if (frm.fornavn.value == '' || frm.fornavn.value== 'Fornavn:'){
            alert('Husk at udfylde navn.');
            frm.fornavn.focus();
            return false;
        }
        if (frm.mail.value == '' || frm.mail.value == 'E-mail adresse:'){
            alert('Husk at udfylde adresse.');
            frm.mail.focus();
            return false;
        }
        return true;
    }
    </script>
</head>
<body>
<form action="side2.php" method="get" name="frm" id="frm" onsubmit="return validate()">
<div class="navn">Navn</div><br/>
<input type="text" size="20" class="fornavn" name="fornavn" value="Fornavn:" onfocus="if (this.value=='Fornavn:') this.value = ''" onblur="if (this.value=='') this.value = 'Fornavn:'"/>
<br/>
<input type="text" size="20" class="efternavn" name="efternavn" value="Efternavn:" onfocus="if (this.value=='Efternavn:') this.value = ''" onblur="if (this.value=='') this.value = 'Efternavn:'"/>
<br/>             
<div class="kon1">Køn</div><br/>
<input type="radio" class="kon" name="kon" value="Mand" />Mand
<input type="radio" class="kon" name="kon" value="Kvinde" />Kvinde
<br/>                             
<div class="personnummer">Personnummer</Div><br/>
<input type="text" size="9" class="personnummer1" name="personnummer1" /> <input type="password" class="sidst4" size="4" name="sidst4" />
<br/>
<div class="email">E-MAIL</Div><br/>
<input type="text" size="20" class="mail" name="mail" value="E-mail adresse:" onfocus="if (this.value=='E-mail adresse:') this.value = ''" onblur="if (this.value=='') this.value = 'E-mail adresse:'"/>
<br/>                         
<input type="Submit" class="videre" value=" Videre " />
</form>
</body>
</html>

Hvordan for jeg en besked ved "radio"/"køn", som ved de andre input text ?
Avatar billede dennisbjorn Juniormester
25. maj 2011 - 20:41 #1
således:




<!DOCTYPE html>
<html>
<head>
    <meta http-equiv="content-type" content="text/html; charset=utf-8"/>
    <title></title>
    <style type="text/css">
    </style>
    <script type="text/javascript">
    function validate(){
        frm = document.getElementById('frm');
        if (frm.fornavn.value == '' || frm.fornavn.value== 'Fornavn:'){
            alert('Husk at udfylde navn.');
            frm.fornavn.focus();
            return false;
        }
        if ((frm.kon[0].checked == false) && (frm.kon[1].checked == false)){       
            alert('Husk at vælge køn.');
            return false;
        }
        if (frm.mail.value == '' || frm.mail.value == 'E-mail adresse:'){
            alert('Husk at udfylde adresse.');
            frm.mail.focus();
            return false;
        }
        return true;
    }
    </script>
</head>
<body>
<form action="side2.php" method="get" name="frm" id="frm" onSubmit="return validate();">
<div class="navn">Navn</div><br/>
<input type="text" size="20" class="fornavn" name="fornavn" value="Fornavn:" onFocus="if (this.value=='Fornavn:') this.value = ''" onBlur="if (this.value=='') this.value = 'Fornavn:'"/>
<br/>
<input type="text" size="20" class="efternavn" name="efternavn" value="Efternavn:" onFocus="if (this.value=='Efternavn:') this.value = ''" onBlur="if (this.value=='') this.value = 'Efternavn:'"/>
<br/>             
<div class="kon1">Køn</div><br/>
<input type="radio" class="kon" name="kon" value="Mand" />Mand
<input type="radio" class="kon" name="kon" value="Kvinde" />Kvinde
<br/>                             
<div class="personnummer">Personnummer</Div><br/>
<input type="text" size="9" class="personnummer1" name="personnummer1" /> <input type="password" class="sidst4" size="4" name="sidst4" />
<br/>
<div class="email">E-MAIL</Div><br/>
<input type="text" size="20" class="mail" name="mail" value="E-mail adresse:" onFocus="if (this.value=='E-mail adresse:') this.value = ''" onBlur="if (this.value=='') this.value = 'E-mail adresse:'"/>
<br/>                         
<input type="Submit" class="videre" value=" Videre " />
</form>
</body>
</html>
Avatar billede olsensweb.dk Ekspert
25. maj 2011 - 20:44 #2
 <script type="text/javascript">
/*
http://jesin.tk/web-design/javascript-validation-textbox-combobox-radiobutton-checkbox/
Textbox is the simplest element to validate if empty or not. We need to check if it is equal to null or ôö because different browsers act differently so its better to check for both the conditions.
*/
// http://quomon.com/question-Radio-button-validation-2405.aspx
function CheckRadio (FrmName, RbGroupName) {
  var radios = document[FrmName].elements[RbGroupName];
  var lng = radios.length;
  for (var i=0; i <lng; i++) {
      if (radios[i].checked) {
        return true;               
      }
  }
  return false;
}

   
    function validate(){
        frm = document.getElementById('frm');

        if (frm.fornavn.value == '' || frm.fornavn.value == null || frm.fornavn.value== 'Fornavn:'){
            alert('Husk at udfylde navn.');
            frm.fornavn.focus();
            return false;
        }
        if (frm.mail.value == '' || frm.mail.value == null || frm.mail.value == 'E-mail adresse:'){
            alert('Husk at udfylde adresse.');
            frm.mail.focus();
            return false;
        }       

        // http://bytes.com/topic/javascript/answers/91232-setting-focus-radio-button
        // http://www.tek-tips.com/viewthread.cfm?qid=376831&page=1058
        if (!CheckRadio("frm","kon")){       
            alert("De har ikke valgt Deres Køn");           
            return false;
        }
       
       
        return true;
    }
    </script>
Avatar billede majbom Novice
25. maj 2011 - 20:46 #3
var cnt = -1;
for(var i=frm.kon.length-1; i > -1; i--)
{
  if(frm.kon[i].checked)
  {
      cnt = i;
      i = -1;
  }
}
if(cnt == -1)
{
  alert('Husk at vælge køn');
  return false;
}
Avatar billede MadsDue Nybegynder
25. juni 2011 - 20:29 #4
luk
Avatar billede majbom Novice
25. juni 2011 - 21:06 #5
øhm... selv tak ???
Avatar billede MadsDue Nybegynder
25. juni 2011 - 21:52 #6
hov.. var ikke meningen.. kan man gør det om?
Avatar billede majbom Novice
25. juni 2011 - 21:57 #7
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