king-arthur: Problem Checkboxen individuel aktivieren/deaktivieren

Hallo,

ich bin Anfänger und auf der Suche nach Hilfe.
Meine Seite besteht aus 3 Auswahllisten und 4 Checkboxen.
Wichtig sind nur die 1. Liste und die Checkboxen.
In der Liste stehen verschiedene Werte. Je nach ausgewähltem Wert sollen bestimmte Checkboxen aktiviert oder deaktiviert werden.
Mein javascript hat jedoch noch fehler. Es aktiviert/deaktiviert die Checkboxen nicht ordentlich.
Wird Basic ausgewählt sollen z.B. alle Checkboxen aktiviert werden.
Bei Standart sollen alle bisherigen Boxen aktiviert werden und nur "Mobility" und "ACD" deaktiviert werden.

Es handelt sich um die Funktion updateTarif().

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">  
<html>  
<head>  
<title></title>  
<meta name="author" content="fsschmittj">  
<meta name="editor" content="html-editor phase 5">  
</head>  
<body text="#000000" bgcolor="#FFFFFF" link="#FF0000" alink="#FF0000" vlink="#FF0000">  
    <table width="50%" border="1" cellpadding="0" cellspacing="2">  
    <tr>  
    <td style="width:50%;">  
    <h2>Bitte Tarif auswählen</h2>  
  
                 <form name="Tarife" action="">  
                 <p><select name="Top" size="1" onchange="updateTarif()">  
                                 <option>Basic</option>  
                                 <option> Basic+</option>  
                                 <option> Standard</option>  
                                 <option>Comfort</option>  
                                 <option>Premium</option>  
                                 <option>Agent Service Basic +</option>  
                 </select></p></form>  
     </td>  
  
  
  
<td style="width:50%;">  
  <form name="Gerätetypen">  
        <select size="1" name="Typen" onchange="update_Typ()">  
                <option value="IP" selected>IP</option>  
                <option value="Digital">Digital</option>  
        </select>  
        <select size="1" name="Phones">  
                <option selected>1110</option>  
                1120</option>  
                <option>1140</option>  
                <option>1210</option>  
                <option>1220</option>  
                <option>1230</option>  
        </select>  
        <br />  
  </form>  
</td>  
  
<script language="Javascript">  
function update_Typ() {  
        var TypenAuswahl = document.forms.Gerätetypen.Typen;  
        var PhonesAuswahl = document.forms.Gerätetypen.Phones;  
  
        PhonesAuswahl.options.length = 0; // DropDown Menü entleeren  
  
        if (TypenAuswahl.options[TypenAuswahl.selectedIndex].value == "IP"){  
                PhonesAuswahl.options[0] = new Option("1110");  
                PhonesAuswahl.options[1] = new Option("1120");  
                PhonesAuswahl.options[2] = new Option("1140");  
                PhonesAuswahl.options[3] = new Option("1210");  
                PhonesAuswahl.options[4] = new Option("1220");  
                PhonesAuswahl.options[5] = new Option("1230");  
}  
        else if (TypenAuswahl.options[TypenAuswahl.selectedIndex].value == "Digital"){  
                PhonesAuswahl.options[0] = new Option("M3902");  
                PhonesAuswahl.options[1] = new Option("M3903");  
                PhonesAuswahl.options[2] = new Option("M3904");  
               }  
}  
function updateTarif(){  
             if(document.Tarife.Top.selectedIndex==0){  
             document.Tarif.CTI.disabled=false;  
             document.Tarif.Mobility.disabled=false;  
             document.Tarif.ACD.disabled=false;}  
             else if(document.Tarife.Top.selectedIndex==1){  
             document.Tarif.CTI.disabled=true;}  
             else if(document.Tarife.Top.selectedIndex==2){  
             document.Tarif.CTI.disabled=false;  
             document.Tarif.Mobility.disabled=true;  
             document.Tarif.ACD.disabled=true;}  
}  
</script>  
<td style="width:50%;">  
<form action="" name="Tarif">  
  <p</p>  
  <p>  
    <input type="checkbox" name="CTI" value="CTI">CTI<br>  
    <input type="checkbox" name="Unified Communication" value="UC"> Unified <wbr> Communication<br>  
    <input type="checkbox" name="Mobility" value="Mobility"> Mobility<br>  
    <input type="checkbox" name="Automatic Call Distribution" value="ACD"> Automatic Call Distributio<br>  
  
</form>  
</td>  
</tr>  
</table>  
</body>  
</html>

Vielen Dank im Voraus.

Gruß

  1. Hi!

    Deine Fehlerbeschreibung ist etwas duerftig. Du solltest aber selbst draufkommen:
    document.Tarif.ACD.disabled=true;
    was ist document.Tarif.ACD? Das gibts nicht.

    --
    "Die Diebesgilde beklagte sich darueber, dass Mumm in aller Oeffentlichkeit behauptet hatte, hinter den meisten Diebstaehlen steckten Diebe."
          - T. Pratchett
    1. Danke für deine rasche Antwort.
      ACD ist die 4. Checkbox.

      Bsp: Wähle ich Standard aus disabled er nur Mobility. Er soll aber Mobility und ACD disablen. Er ändert immer nur eine Checkbox obwohl ich mehrere Befehle (document.Tarif.CTI.disabled=false;
               document.Tarif.Mobility.disabled=true;
               document.Tarif.ACD.disabled=true;)
      aufgeführt habe.

      Gruß

      1. Hi,

        was ist document.Tarif.ACD? Das gibts nicht.

        ACD ist die 4. Checkbox.

        Nein, in deinem Beispiel ganz und gar nicht.
        Da gibt es keine Checkbox mit dem Namen/der ID ACD.

        MfG ChrisB

        --
        Light travels faster than sound - that's why most people appear bright until you hear them speak.
  2. Hab den Fehler gefunden.
    Wusste nicht, dass über name zugegriffen wird. war die ganze Zeit bei value.

    Danke.

    1. Hab den Fehler gefunden.

      Das freut mich.

      Wusste nicht, dass über name zugegriffen wird. war die ganze Zeit bei value.

      ;)

      Danke.

      --
      "Die Diebesgilde beklagte sich darueber, dass Mumm in aller Oeffentlichkeit behauptet hatte, hinter den meisten Diebstaehlen steckten Diebe."
            - T. Pratchett
    2. Mahlzeit king-arthur,

      Wusste nicht, dass über name zugegriffen wird. war die ganze Zeit bei value.

      Wieso sollte ein Element anhand seines Wertes identifiziert bzw. referenziert werden? Schließlich ist dieser u.U. gar nicht bekannt ... es ist deutlich sinnvoller, den Zugriff über den Namen zu regeln.

      A propos Name: Du solltest mal die Namen Deiner Elemente überprüfen - <http://de.selfhtml.org/html/referenz/attribute.htm#id_idref_name@title=schließlich sind Leerzeichen darin nicht erlaubt>!

      MfG,
      EKKi

      --
      sh:( fo:| ch:? rl:( br:> n4:~ ie:% mo:} va:) de:] zu:) fl:{ ss:) ls:& js:|