thomas: radiobutton on/off setzen

Hallo

Möchte folgendes machen:
Habe eine Checkbox und ein radiobutton. Wenn die checkbox angeklickt ist, dürfen die radiobuttons ebenfalls angeklickt werden. Wenn aber die Checkbox nicht gewählt ist sollten die radiobuttons deaktiviert werden.

wie mach ich das mit JavaScript am besten.

Mein Versuch klappt irgendwie nicht:

//rssfeed = checkbox;
//rssStyle = radiobuttons;

if (document.neuerEintrag.rssfeed.value = '1')
 {
 document.neuerEintrag.rssStyle.disabled=true;
 } else {
 document.neuerEintrag.rssStyle.disabled=false;
 }

Vielen Dank für Infos.

Gruss
Thomas

  1. Hello out there!

    Der Thread Radiobuttons Problem! ist wohl was für dich.

    See ya up the road,
    Gunnar

    --
    “Remember, in the end, nobody wins unless everybody wins.” (Bruce Springsteen)
  2. Hi Thomas,

    Habe eine Checkbox und ein radiobutton. Wenn die checkbox angeklickt ist, dürfen die radiobuttons ebenfalls angeklickt werden. Wenn aber die Checkbox nicht gewählt ist sollten die radiobuttons deaktiviert werden.

    okay, das hört sich nicht gar so schwierig an.

    if (document.neuerEintrag.rssfeed.value = '1')

    Aber diese Zeile enthält gleich zwei Denkfehler.
    Ein Checkbox-Element hat zwar eine value-Eigenschaft, es ist aber sinnlos, sie abzufragen, da sie nicht den Zustand wiedergibt. Dafür gibt es die checked-Eingenschaft.
    Ausserdem hast du in der if-Anweisung keinen Vergleich, sondern eine Zuweisung formuliert. Du setzt also den value der Checkbox immer auf '1', das Ergebnis dieser Anweisung ist 'wahr' im boolschen Sinn, also wird immer die Anweisung nach dem if ausgeführt, der else-Zweig kommt nie zum Zuge.
    Deine Abfrage müsste also einfach lauten

    if (document.neuerEintrag.rssfeed.checked)

    Und den Rest kann man sogar eleganter und einfacher ohne if-Anweisung schreiben:

    document.neuerEintrag.rssStyle.disabled = !document.neuerEintrag.rssfeed.checked;

    Ich setze disabled des Radiobutton-Elements also einfach auf den invertierten Wert des checked-Zustands der Checkbox.

    Schönes Wochenende noch,
     Martin

    --
    Der Stress von heute ist die gute alte Zeit von morgen.