Solved

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

Posted on 2009-03-30
4
513 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

Industry Leaders: We Want Your Opinion!

We value your feedback.

Take our survey and automatically be enter to win anyone of the following:
Yeti Cooler, Amazon eGift Card, and Movie eGift Card!

Question has a verified solution.

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

Suggested Solutions

Title # Comments Views Activity
Reactjs with .NET 3 78
Problem to copy file 14 54
Send parameters via datatable ajax call 4 12
aspx ascx, c# 7 19
IntroductionWhile developing web applications, a single page might contain many regions and each region might contain many number of controls with the capability to perform  postback. Many times you might need to perform some action on an ASP.NET po…
Problem Hi all,    While many today have fast Internet connection, there are many still who do not, or are connecting through devices with a slower connect, so light web pages and fast load times are still popular.    If your ASP.NET page …
The Email Laundry PDF encryption service allows companies to send confidential encrypted  emails to anybody. The PDF document can also contain attachments that are embedded in the encrypted PDF. The password is randomly generated by The Email Laundr…
A short tutorial showing how to set up an email signature in Outlook on the Web (previously known as OWA). For free email signatures designs, visit https://www.mail-signatures.com/articles/signature-templates/?sts=6651 If you want to manage em…

726 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