Avatar billede macho Praktikant
31. december 2003 - 12:05 Der er 14 kommentarer og
1 løsning

Felt skal kun være aktivt afhængig af andet.

Jeg har to select-bokse:
1.:
<span style="font-size: 9pt">
<select size="1" name="distance">
<option selected value="0">-Angiv distance-</option>
<option value="250">Marathon (250,00 DKK)</option>
<option value="200">Halvmarathon (200,00 DKK)</option>
<option value="100">5,8 km (100,00 DKK)</option>
<option value="50">3 km (50,00 DKK)</option>
</span></font></b></select>

2.:
<span style="font-size: 9pt">
<select size="1" name="party">
<option selected value="0">-Angiv antal deltagere-</option>
<option value="0">0</option>
<option value="250">1 (250,00 DKK)</option>
<option value="500">2 (500,00 DKK)</option>
</span></font></b>
</select>

Det jeg gerne vil have skal ske, er, at KUN hvis jeg i select boks nr. 1 vælger enten Marathon (250,00 DKK) eller Halvmarathon (200,00 DKK) skal det være muligt at vælge noget i selectboks 2.

Sagt med andre ord: Hvis jeg i selectboks nr. 1 (distance) vælger 5,8 km eller 3 km, skal det ikke være muligt at vælge noget i selectboks nr. 2 (party).

Håber det er til at forstå!

mvh og godt nytår.
Avatar billede nikolajdu Nybegynder
31. december 2003 - 12:12 #1
<select size="1" name="distance" onchange="if(this.options[this.selectedIndex].value == '100' || this.options[this.selectedIndex].value == '50'){document.getElementById('party').enabled = true}else{document.getElementById('party').enabled = false}">

<select size="1" name="party" disabled>
Avatar billede macho Praktikant
31. december 2003 - 13:10 #2
-> nikolajdu
Jeg får en syntaks-fejl, når jeg forsøger, at gøre som du beskriver.
Min html-side ser sådan her ud nu:

<html>

<head>

<title>Tilmeld</title>
</head>

<body>
<span style="font-size: 9pt">
<select size="1" name="distance" onchange="if(this.options[this.selectedIndex].value == '100' || this.options[this.selectedIndex].value == '50'){document.getElementById('party').enabled = true}else document.getElementById('party').enabled = false}">
<option selected value="0">-Angiv distance-</option>
<option value="250">Marathon (250,00 DKK)</option>
<option value="200">Halvmarathon (200,00 DKK)</option>
<option value="100">5,8 km (100,00 DKK)</option>
<option value="50">3 km (50,00 DKK)</option>
</span></font></b></select>

<span style="font-size: 9pt">
<select size="1" name="party" disabled>
<option selected value="0">-Angiv antal deltagere-</option>
<option value="0">0</option>
<option value="250">1 (250,00 DKK)</option>
<option value="500">2 (500,00 DKK)</option>
</span></font></b>
</select>


</body>

</html>

Party-feltet er ganske vist disabled nu, men det bliver det ved med at være, uanset jeg vælger hel- eller halv-marathon i "distance" boksen!

?

mvh
Avatar billede macho Praktikant
31. december 2003 - 13:11 #3
Den skal selvfølgelig ind i en form, men foreløbig tjekker jeg lige denne funktion!
Avatar billede macho Praktikant
31. december 2003 - 13:40 #4
Jeg fandt selv fejlen. Selectboks nr. 1 skal slutte således:

= false;">

og IKKE sådan:

= false}">

smid et svar nikolajdu, så du kan få dine pts.
mvh
Avatar billede nikolajdu Nybegynder
31. december 2003 - 13:52 #5
Jamen godt du fandt for jeg var ude og hente drikkevarer til i aften :))
Avatar billede macho Praktikant
31. december 2003 - 13:55 #6
Det skal jo også passes, men nu hvor du er tilbage, kan du måske hjælpe mig med en lille ting mere (jeg skal nok smide nogle flere pts. til dig):

I selectboks nr. 1, har jeg i forvejen en "onchange":
onchange="document.tilmelding.sum.value=parseInt(this.value)+parseInt(document.tilmelding.party.value)+',00 DKK'"

som er med til at udregne samlet beløb. Hvordan får jeg flettet den ind i den "onchange", som du kom med?

mvh
Avatar billede nikolajdu Nybegynder
31. december 2003 - 14:44 #7
med semikolon :

onchange="document.tilmelding.sum.value=parseInt(this.value)+parseInt(document.tilmelding.party.value)+',00 DKK'if(this.options[this.selectedIndex].value == '100' || this.options[this.selectedIndex].value == '50'){document.getElementById('party').enabled = true}else document.getElementById('party').enabled = false;"
Avatar billede nikolajdu Nybegynder
31. december 2003 - 14:48 #8
og hvis jeg ellers kunne lave et semikolon selv ;

onchange="document.tilmelding.sum.value=parseInt(this.value)+parseInt(document.tilmelding.party.value)+',00 DKK';if(this.options[this.selectedIndex].value == '100' || this.options[this.selectedIndex].value == '50'){document.getElementById('party').enabled = true}else document.getElementById('party').enabled = false;"
Avatar billede macho Praktikant
31. december 2003 - 14:54 #9
Party-feltet forbliver "disabled" nu, uanset hvad jeg vælger ??

Den regner ganske vist rigtigt nu og jeg får ingen fejlmeddelelser, men som sagt, så kan jeg ikke vælge noget i party-feltet, ud fra kriterierne!

?
Avatar billede macho Praktikant
31. december 2003 - 15:07 #10
Kan det mon hjælpe, hvis jeg smider det meste her:

<html>
<head>

<title>Tilmelding</title>

</head>
<body>
<div align="center">
  <center>
  <table border="1" cellpadding="0" cellspacing="0" style="border-collapse: collapse" bordercolor="#F88A00" width="80%" id="AutoNumber1" bgcolor="#FFFFFF" bordercolorlight="#F88A00" bordercolordark="#F88A00">
    <tr>
      <td width="79%" valign="top">&nbsp;<div align="center">
        <center>
<form name="tilmelding" method="post" action="sendmail.php">
      <table border="0" cellpadding="4" style="border-collapse: collapse" bordercolor="#111111" width="96%">
        <tr valign="top">
            <td width="145" valign="middle">
            <p align="right"><font face="Verdana" style="font-size: 9pt">Distance</font></td>
            <td width="214" valign="middle"><b><font face="Verdana">
            <span style="font-size: 9pt"><select size="1" name="distance" onchange="document.tilmelding.sum.value=parseInt(this.value)+parseInt(document.tilmelding.party.value)+',00 DKK';if(this.options[this.selectedIndex].value == '100' || this.options[this.selectedIndex].value == '50' || this.options[this.selectedIndex].value == '0'){document.getElementById('party').enabled = true}else document.getElementById('party').enabled = false;">
            <option selected value="0">-Angiv distance-</option>
            <option value="250">Marathon (250,00 DKK)</option>
            <option value="200">Halvmarathon (200,00 DKK)</option>
            <option value="100">5,8 km (100,00 DKK)</option>
            <option value="50">3 km (50,00 DKK)</option>
            </span></font></b></select><b><font face="Verdana" style="font-size: 9pt">
            <font color="#FF0000">*</font></font></b></td>
        </tr>
        <tr valign="top">
            <td width="145" valign="middle">
            <p align="right"><font face="Verdana" style="font-size: 9pt">
            Marathon Party</font></td>
            <td width="214" valign="middle">
            <b><font face="Verdana"><span style="font-size: 9pt">
            <select size="1" name="party" onchange="document.tilmelding.sum.value=parseInt(this.value)+parseInt(document.tilmelding.distance.value)+',00 DKK'" disabled>
            <option selected value="0">-Angiv antal deltagere-</option>
            <option value="0">0</option>
            <option value="250">1 (250,00 DKK)</option>
            <option value="500">2 (500,00 DKK)</option>
            </span></font></b>
            </select><font face="Verdana" style="font-size: 9pt"><b> </b></font><b>
            <font color="#FF0000" face="Verdana" style="font-size: 9pt">*</font></b></td>
        </tr>
                    <tr>
            <td width="145" valign="middle">
            <div align="right"><span style="font-weight: 700">
                <font face="Verdana" style="font-size: 9pt">B</font></span><font face="Verdana" style="font-size: 9pt; font-weight:700">eløb
                i alt</font></div>
            </td>
            <td width="513" valign="middle">
            <div align="left"><b><font face="Verdana" style="font-size: 9pt">
                <input type="text" name="sum" size="10" readonly="true"> </font></b></div>
            </td>
        </tr>
        </table>
                </form>
</body>
</html>


Måske jeg selv har lavet en fejl?
Avatar billede nikolajdu Nybegynder
31. december 2003 - 15:08 #11
Prøv at bytte om på de 2 så. Skal desværre gå nu..... JUHU!!!
Avatar billede KingMedia Novice
01. januar 2004 - 18:22 #12
Har lige pillet lidt ved det.. 
attrib'en hedder disabled og ikke enabled .. derfor får du fejl..

kig her..

http://kingmedia.dk/Eksperten/JavaScript/pris.htm

/Mads
Avatar billede KingMedia Novice
01. januar 2004 - 19:36 #13
har tilføjet en lille ekstra ting.. 

Hvis nu man først vælger marathon, og 1 deltager til ffesten.. hvis så man valgte 5,8Km bagefter i stedet, ville man jo ikke ku rette på antallet til festen.

Rettelsen gør sig i, at vælger man en af de ting hvor festen ikke er gældende, så uanset hvad der var valgt før, vil fest feltet blive nulstillet.

/Mads
Avatar billede macho Praktikant
01. januar 2004 - 22:36 #14
-> kingmedia
Tusind tak for yderligere hjælp til min formular, som nu virker endnu bedre. Specielt din "body onload" er jeg meget glad for - der er smidt 60 pts. af til dig for hjælpen her:
http://www.eksperten.dk/spm/445902

mvh
Avatar billede KingMedia Novice
01. januar 2004 - 23:49 #15
Macho >> Det var skam så lidt..  :o) ..  man må hjælpe hinanden hvor man kan jo ..

/Mads
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