accessing radiobuttons

Discussion in 'Javascript' started by Martien van Wanrooij, Jan 18, 2004.

  1. I am working on a site with some pages that all have a form that starts with
    a group of radiobuttons. By default none of the buttons is checked. Before
    submitting the form there is a validation script that verifies if a choice
    has been made.

    The following code works, but only for one individual page
    function showChecked()
    {
    if(!document.forms[0].heeftPartner[0].checked &&
    !document.forms[0].heeftPartner[1].checked)alert ('Please answer this
    question');
    else document.forms[0].submit();
    }

    In every page there will come an almost similar script, only the number of
    radiobuttons belonging to the same group varies and every group also has a
    different name.
    As far as I tried out, when I write document.forms[0].elements[0] the
    "heeftPartner" group can also be accessed, but I didn't find a method to
    acces every individual element. So I would like a script that
    - chooses the first element of the first form (which is always a radio
    button group)
    - verifies if one of the radio buttons has been checked
    If I could retrieve the number of buttons in a group by something like
    forms[0].elements[0].length I could make something like

    var theLength = forms[0].elements[0].length
    var isAnswered = false;
    for(i = 0; i < theLength; i++)
    {
    if (document.forms[0].element[0].checked) //and obviously this does
    not work!!!
    {
    isAnswered = true;
    break;
    }
    }
    if (isAnswered) document[0].forms[0].submit();
    else alert('Please answer this question');

    Even if the script has to be a little bit more complicated it is still worth
    the trouble because there are a lot of pages.
    Thanks for any suggestions,

    Martien van Wanrooij
     
    Martien van Wanrooij, Jan 18, 2004
    #1
    1. Advertising

  2. On Sun, 18 Jan 2004 11:56:49 +0100, Martien van Wanrooij
    <> wrote:

    > I am working on a site with some pages that all have a form that starts
    > with a group of radiobuttons. By default none of the buttons is
    > checked. Before submitting the form there is a validation script that
    > verifies if a choice has been made.


    When you use form.elements[index], where form represents a form object and
    index is a positive integer, you will obtain a reference to the control at
    that index in the form. If you use form.elements['name'], where name is
    the name of the control, you will obtain a collection of all controls in
    that form, with that name.

    That's how you can access a group of radio buttons[1].

    That should help you on your way,
    Mike


    [1] There are other methods.

    --
    Michael Winter
    d (replace ".invalid" with ".uk" to reply)
     
    Michael Winter, Jan 18, 2004
    #2
    1. Advertising

  3. "Michael Winter" <> schreef in bericht
    news:eek:...
    > If you use form.elements['name'], where name is
    > the name of the control, you will obtain a collection of all controls in
    > that form, with that name.

    Thank you, Michael, this works exactly as I wanted :)

    Martien van Wanrooij
     
    Martien van Wanrooij, Jan 18, 2004
    #3
    1. Advertising

Want to reply to this thread or ask your own question?

It takes just 2 minutes to sign up (and it's free!). Just click the sign up button to choose a username and then you can ask your own questions on the forum.
Similar Threads
  1. Sean
    Replies:
    1
    Views:
    373
    Ken Cox [Microsoft MVP]
    Aug 6, 2003
  2. RB

    RadioButtons & DataGrid

    RB, Aug 11, 2003, in forum: ASP .Net
    Replies:
    0
    Views:
    406
  3. Robert H
    Replies:
    0
    Views:
    434
    Robert H
    Dec 4, 2003
  4. Carlos
    Replies:
    0
    Views:
    281
    Carlos
    Feb 18, 2005
  5. =?Utf-8?B?Q2hyaXN0aWFhbiBOaWV1d2xhYXQ=?=

    Dynamically add RadioButtons in Repeater

    =?Utf-8?B?Q2hyaXN0aWFhbiBOaWV1d2xhYXQ=?=, May 26, 2005, in forum: ASP .Net
    Replies:
    1
    Views:
    960
    =?Utf-8?B?Q2hyaXN0aWFhbiBOaWV1d2xhYXQ=?=
    May 26, 2005
Loading...

Share This Page