Solved

How to validate checkboxlist for atleast a single item to be selected..??

Posted on 2009-03-30
4
511 Views
Last Modified: 2013-11-07
I need to validate for atleast a single checkboxlist is to be selected using Javascript not by required field validator..
.and also do the same in server side validation....i binded the checkboxlist..plz sugest

<asp:CheckBoxList ID="CheckBoxList1" runat="server"  RepeatColumns="2">
        </asp:CheckBoxList>&nbsp;

Open in new window

0
Comment
Question by:Rajar Ahmed
  • 2
  • 2
4 Comments
 
LVL 16

Expert Comment

by:sunithnair
ID: 24017731
Try like this
ASPX
 
<%@ Page Language="VB" AutoEventWireup="false" CodeFile="Default2.aspx.vb" Inherits="Default2" %>
 
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
 
<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
    <title>Untitled Page</title>
    <script type="text/javascript">
        function Validate()
        {
            var checkBoxes = document.getElementsByTagName("input");
            var isValid = false;
            for(var i=0;i<checkBoxes.length;i++)
            {
                if(checkBoxes[i].type=="checkbox" && checkBoxes[i].id.indexOf("CheckBoxList1")!=0)
                {
                    isValid = true;
                    break;
                }
            }
            if(!isValid)
            {
                alert("Please select atleast one value");
            }
            return isValid;
        }
    </script>
</head>
<body>
    <form id="form1" runat="server">
        <asp:CheckBoxList ID="CheckBoxList1" runat="server"  RepeatColumns="2">
        </asp:CheckBoxList>
        <asp:Button ID="btnSubmit" runat="server" Text="Submit" OnClientClick="return Validate();" />
    </form>
</body>
</html>
 
 
CODEBEHIND
 
 
Partial Class Default2
    Inherits System.Web.UI.Page
    Sub Page_Load(ByVal sender As Object, ByVal e As EventArgs) Handles Me.Load
        If Not IsPostBack Then
            CheckBoxList1.DataSource = System.IO.Directory.GetFiles("C:\\")
            CheckBoxList1.DataBind()
        End If
    End Sub
 
    Protected Sub btnSubmit_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles btnSubmit.Click
        If CheckBoxList1.SelectedIndex = -1 Then
            Response.Write("Nothing is selected")
        End If
 
    End Sub
End Class

Open in new window

0
 
LVL 18

Author Comment

by:Rajar Ahmed
ID: 24017972
server side is fine ,,.. but clientside i get message of 'Please select atleast one value' even if checkbox is selected...
 
0
 
LVL 16

Accepted Solution

by:
sunithnair earned 500 total points
ID: 24018031
Sorry the script should be like this
    <script type="text/javascript">
        function Validate()
        {
            var checkBoxes = document.getElementsByTagName("input");
            var isValid = false;
            for(var i=0;i<checkBoxes.length;i++)
            {
                if(checkBoxes[i].type=="checkbox" && checkBoxes[i].id.indexOf("CheckBoxList1")==0 && checkBoxes[i].checked)
                {
                    isValid = true;
                    break;
                }
            }
            if(!isValid)
            {
                alert("Please select atleast one value");
            }
            return isValid;
        }
    </script>

Open in new window

0
 
LVL 18

Author Closing Comment

by:Rajar Ahmed
ID: 31564273
Thanks Mate...
0

Featured Post

3 Use Cases for Connected Systems

Our Dev teams are like yours. They’re continually cranking out code for new features/bugs fixes, testing, deploying, testing some more, responding to production monitoring events and more. It’s complex. So, we thought you’d like to see what’s working for us.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

ASP.Net to Oracle Connectivity Recently I had to develop an ASP.NET application connecting to an Oracle database.As I am doing it first time ,I had to solve several problems. This article will help to such developers  to develop an ASP.NET client…
Parsing a CSV file is a task that we are confronted with regularly, and although there are a vast number of means to do this, as a newbie, the field can be confusing and the tools can seem complex. A simple solution to parsing a customized CSV fi…
This Micro Tutorial will teach you how to censor certain areas of your screen. The example in this video will show a little boy's face being blurred. This will be demonstrated using Adobe Premiere Pro CS6.
Finds all prime numbers in a range requested and places them in a public primes() array. I've demostrated a template size of 30 (2 * 3 * 5) but larger templates can be built such 210  (2 * 3 * 5 * 7) or 2310  (2 * 3 * 5 * 7 * 11). The larger templa…

770 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