Solved

Loop through a RadioButtonList using javascript, in order to validate if a selection has been made.

Posted on 2007-11-20
4
3,602 Views
Last Modified: 2008-02-01
Hi,

I have a radiobuttonlist which I have to validate using javascript. I know there are a million better ways and easier ways to do this using server side code, however specific to the application I am working on I need to do this in javascript.

Having searched and found many "Solutions" to this problem, I have had none that have worked.
I realy would appreciate some feedback on the easiest way to do this.
All I need to do us check if an item has been selected or not.

Cheers

0
Comment
Question by:jazz__man
  • 2
4 Comments
 
LVL 17

Accepted Solution

by:
gops1 earned 250 total points
ID: 20318780
Is this you are looking for?
<html>

	<head>

		<title>Script Demo Gops</title>

		<script type="text/javascript">

			function checkRadio(f){

				var r=f.radbtn;

				var f=false;

				for(var i=0;i<r.length;i++){

					if(r[i].checked){f=true;break}

				}

				if(!f) alert("Nothing is checked"); else alert("Checked!!!");

			}

		</script>

	</head>

<body>

	<form name="rad">

		<input type="radio" name="radbtn"><br>

		<input type="radio" name="radbtn"><br>

		<input type="radio" name="radbtn"><br>

		<input type="radio" name="radbtn"><br>

		<input type="radio" name="radbtn"><br>

		<input type="radio" name="radbtn"><br>

		<input type="radio" name="radbtn"><br>

		<input type="radio" name="radbtn"><br>

		<input type="radio" name="radbtn"><br>

		<input type="radio" name="radbtn"><br>

		<input type="button" value="Check" onclick="checkRadio(this.form)">

	</form>

</body>

</html>

Open in new window

0
 
LVL 12

Assisted Solution

by:needo_jee
needo_jee earned 250 total points
ID: 20318839
here is working code for what you have asked...

in ASPX form
In head section
<script type ="text/javascript"  language =javascript >
    function LoopThroughRDList()
    {
    var MyRDList =document.form1.getElementsByTagName('input');
   
    var i=0;
        for(i=0; i < MyRDList.length - 1; i++)
        {
            if(MyRDList[i].id.indexOf("MyRadioButtonList") != -1)
            {
                if(MyRDList[i].checked)
                {
                alert("checked");
                }
                else
                {
                alert("not checked");
                }
            }
        }
    }
    </script>

IN THE FORM SECTION

 <asp:RadioButtonList ID="MyRadioButtonList" runat="server">
            <asp:ListItem>mm</asp:ListItem>
            <asp:ListItem>nn</asp:ListItem>
            <asp:ListItem>hh</asp:ListItem>
            <asp:ListItem>gg</asp:ListItem>
            <asp:ListItem>ee</asp:ListItem>
            <asp:ListItem>oo</asp:ListItem>
        </asp:RadioButtonList></div>
        <asp:Button ID="Button1" OnClientClick="LoopThroughRDList()"  runat="server" Text="Button" />


0
 
LVL 2

Author Comment

by:jazz__man
ID: 20318858
But for a RadioButtonList the Length is always 1 or at least when debugging thats what it always shows. I have 10 Items that are being pulled from the database and are being bound to each button.

So the first thing I have to do is count number of buttons on the RadioButtonList.
0
 
LVL 12

Expert Comment

by:needo_jee
ID: 20319217
if you are talking about counting in Javascript then the "RadioButtonList" dont hold any collection of its items .. you need to get all input type controls and then checking one by one if it is input then is checkbox, if yes then does it contains id of the RadioButtonList if yes then it is an item of the RadioButtonList
..
if you are talking about length in code serverside then you need to check
MyRadioButtonList.Items.Count  must give you the total intems in the list?
thanks
0

Featured Post

IT, Stop Being Called Into Every Meeting

Highfive is so simple that setting up every meeting room takes just minutes and every employee will be able to start or join a call from any room with ease. Never be called into a meeting just to get it started again. This is how video conferencing should work!

Join & Write a Comment

Using Quotation Marks in PHP This question (http://www.experts-exchange.com/Web_Development/Web_Languages-Standards/PHP/Q_28217211.html) seems to come up a lot for developers who are new to PHP.  And it got me thinking, "How can we explain the rule…
Introduction A frequently used term in Object-Oriented design is "SOLID" which is a mnemonic acronym that covers five principles of OO design.  These principles do not stand alone; there is interplay among them.  And they are not laws, merely princ…
The viewer will learn the basics of jQuery, including how to invoke it on a web page. Reference your jQuery libraries: (CODE) Include your new external js/jQuery file: (CODE) Write your first lines of code to setup your site for jQuery.: (CODE)
The viewer will learn the basics of jQuery including how to code hide show and toggles. Reference your jQuery libraries: (CODE) Include your new external js/jQuery file: (CODE) Write your first lines of code to setup your site for jQuery…

708 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question

Need Help in Real-Time?

Connect with top rated Experts

17 Experts available now in Live!

Get 1:1 Help Now