Avatar billede maron Nybegynder
07. december 2006 - 00:47 Der er 13 kommentarer og
1 løsning

Tjek af radio button

Jeg har 3 styks radio button gruppe R1, hvordan kan man med java-script tjekke om en er "checked" ?
Avatar billede showsource Seniormester
07. december 2006 - 06:32 #1
<html><head><title>Radio tjek</title>

<script type="text/javascript">
function checkBoxes(f){
  e = f.elements;

  for(i=0;e.length>i;i++){
    if(e[i].name.indexOf('tlf_valg')>-1&&e[i].checked) {
    return this.form.f.submit;
    }
  }
  alert('Du skal vælge radioknap!');
  return false;
}

</script>

</head>
<body>

<form method="get" onsubmit="return(checkBoxes(this));">
Ja <input type="radio" name="tlf_valg" value="Ja"> Nej <input type="radio" name="tlf_valg" value="Nej"><br />
<input type="submit">
</form>

</body></html>
Avatar billede fennec Nybegynder
07. december 2006 - 08:30 #2
Nu er det sådan at man ikke kan unchecke en radio gruppe, så hvis du bare har sat en til at være afkrydset fra start, behøver du ikke lave et tjeck.
<input type="Radio" name="R1" checked value="1">
<input type="Radio" name="R1" value="2">
<input type="Radio" name="R1" value="3">
Avatar billede maron Nybegynder
07. december 2006 - 10:04 #3
Jeg har dette script hvor jeg gerne vil have tilføjet radio button R1
Kan det lade sig gøre?

<script language="javascript">function tjekbilled(upload){upload.knap.disabled=true; if ((upload.FILE1.value.length < 1 )){alert('Du har ikke valgt noget billed!');upload.FILE1.focus();upload.knap.disabled=false; return (false);} return true}</script>
Avatar billede maron Nybegynder
08. december 2006 - 11:04 #4
Nå det kan ikke lade sig gøre, ingen andre forslag så lukker jeg igen.
Avatar billede fennec Nybegynder
08. december 2006 - 11:22 #5
Selvfølgelig kan det lade sig gøre :o)

Noget i denne stil:
<script language="javascript">
function tjekbilled(upload)
{
    upload.knap.disabled=true;
    if ((upload.FILE1.value.length < 1 ))
    {
        alert('Du har ikke valgt noget billed!');
        upload.FILE1.focus();
        upload.knap.disabled=false;
        return (false);
    }
    r1 = upload.form.R1
    for(i=0;r1.length<i;i++)
        if(r1[i].checked)
            return true;
    alert('Du skal vælge radioknap!');
    return false;
}
</script>

Men har du overvejet min første post? Da brugerne åbentbart skal lave et valg, kan du lige så godt sætte en default. Så behøver du slet ikke at lave dette tjek, da man ikke kan unchecke en radio gruppe.
Avatar billede maron Nybegynder
08. december 2006 - 14:52 #6
Et tjek skal laves, da det giver en ekstra opmærksomhed ved valget
Avatar billede maron Nybegynder
08. december 2006 - 15:15 #7
fennec >> scriptet virker ikke helt, formularfeltet FILE1 tjekkes godt nok, men ved radio knap for jeg fejlen - " 'form.R1' is NULL or not an object "
Avatar billede fennec Nybegynder
08. december 2006 - 15:20 #8
Ændre:
r1 = upload.form.R1

til
r1 = upload.R1
Avatar billede olebole Juniormester
08. december 2006 - 15:20 #9
Prøv at vise din kode
Avatar billede maron Nybegynder
08. december 2006 - 16:08 #10
Ser ud til at det hjælper ved at fjerne 'form' men min knap forbliver disabled
Avatar billede maron Nybegynder
08. december 2006 - 17:22 #11
Her er koden, scriptet ignorer radio knapper selvom de er checked.

<script language="javascript">
function tjekbilled(upload)
{
    upload.knap.disabled=true;
    if ((upload.FILE1.value.length < 1 ))
    {
        alert('Du har ikke valgt noget billed!');
        upload.FILE1.focus();
        upload.knap.disabled=false;
        return (false);
    }
    r1 = upload.R1
    for(i=0;r1.length<i;i++)
        if(r1[i].unchecked)
            return true;
    alert('Du skal vælge radioknap!');
    upload.knap.disabled=false;
    return false;
}
</script>
<form method="POST" action="fil.asp" enctype="multipart/form-data"  onsubmit="return tjekbilled(this)" name="upload">
<table width="455" cellpadding="0" height="1" border="0" cellspacing="0">
<tr>
<td width="115" height="0">
<p style="margin-left: 4"><b><font size="3" color="#000000">Fil:</font></b></p>
</td>
<td width="336" height="0"><font color="#000000" size="3"><input type="FILE" input name="FILE1"></font></td>
</tr>
<td width="115">1:<input type="radio" value="1" name="R1">  2:<input type="radio" value="2" name="R1">
  3:<input type="radio" value="3" name="R1">
<p><input type="submit" value="send" name="knap">
</table>
Avatar billede fennec Nybegynder
11. december 2006 - 08:32 #12
for løkken er forkert (en skrive fejl fra min side)

<script language="javascript">
function tjekbilled(upload)
{
    upload.knap.disabled=true;
    if ((upload.FILE1.value.length < 1 ))
    {
        alert('Du har ikke valgt noget billed!');
        upload.FILE1.focus();
        upload.knap.disabled=false;
        return (false);
    }
    r1 = upload.R1
    tmp = false
    for(i=0;i<r1.length;i++)
        if(r1[i].checked)
            tmp = true
    if(!tmp)
    {
        alert('Du skal vælge radioknap!');
        upload.knap.disabled=false;
        return false;
    }
    return true;
}
</script>
<form method="POST" action="fil.asp" enctype="multipart/form-data"  onsubmit="return tjekbilled(this)" name="upload">
<table width="455" cellpadding="0" height="1" border="0" cellspacing="0">
<tr>
<td width="115" height="0">
<p style="margin-left: 4"><b><font size="3" color="#000000">Fil:</font></b></p>
</td>
<td width="336" height="0"><font color="#000000" size="3"><input type="FILE" input name="FILE1"></font></td>
</tr>
<td width="115">1:<input type="radio" value="1" name="R1">  2:<input type="radio" value="2" name="R1">
  3:<input type="radio" value="3" name="R1">
<p><input type="submit" value="send" name="knap">
</table>
Avatar billede maron Nybegynder
12. december 2006 - 15:22 #13
Alletiders. Tak for hjælpen :-)
Avatar billede fennec Nybegynder
12. december 2006 - 15:27 #14
np
.o) <-- One Eyed Jack
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