Paxy: form.elements liefert undefined

Ich habe ein Html-Form erstellt. In diesem Form gibt es EIN radiobutton. Die JavaScript-Abfrage:

document.forms['form'].elements['radio'].length

liefert mir immer undefined.
Wenn es in dem Form ZWEI radios gibt, dann liefert die obere Abfrage 2. Was ja auch stimmt. Warum liefert die Abfrage bei nur einem radio die Meldung undefined?

  1. Hello,

    Wenn es in dem Form ZWEI radios gibt, dann liefert die obere Abfrage 2. Was ja auch stimmt. Warum liefert die Abfrage bei nur einem radio die Meldung undefined?

    weil .length eine Eigenschaft ist, die für Arrays definiert ist. Ein einzelner Radiobutton ist kein Array - hab ich auch schon manchmal drüber geflucht, macht aber Sinn. Du kannst dies mit einem einfachen if (document.forms['form'].elements['radio'].length)) prüfen.

    MfG
    Rouven

    --
    -------------------
    There's no such thing as a free lunch  --  Milton Friedman
    1. Hello,

      Wenn es in dem Form ZWEI radios gibt, dann liefert die obere Abfrage 2. Was ja auch stimmt. Warum liefert die Abfrage bei nur einem radio die Meldung undefined?
      weil .length eine Eigenschaft ist, die für Arrays definiert ist. Ein einzelner Radiobutton ist kein Array - hab ich auch schon manchmal drüber geflucht, macht aber Sinn. Du kannst dies mit einem einfachen if (document.forms['form'].elements['radio'].length)) prüfen.

      MfG
      Rouven

      Vielen Dank für den Tipp.

      1. Hi,

        andere Frage. Wieso nur EIN Radiobutton?

        Macht das Sinn? Radiobuttons haben doch die Eigenschaft, dass immer einer ausgeaehlt sein muss ... d.h. wenn nur einer da is, hat der immer ausgewaehlt zu sein.