Mensaje dentro de Acceso y trabajo con datos

Responder 
#1 - 05/06/2009 15:19:38 Reporta abuso | Link Permanente
SariSan
Usuario no registrado
Validar checkboxlist

Responder Citar
Hola a todos,aqui sigo a vueltas con el checkboxlist,ahora quiero validarlo y q por lo menos haya una opcion marcada.Sabeis como puedo hacerlo??
Estoy probando esto,xo no funciona:

.aspx
<asp:CheckBoxList ID="checksecteur" runat="server" RepeatColumns="2" AutoPostBack="True" Height="146px" Width="494px" >
<asp:ListItem>Agroalimentaire</asp:ListItem>
<asp:ListItem>BTP</asp:ListItem>
<asp:ListItem>Education et Formation</asp:ListItem>
</asp:CheckBoxList>
&nbsp; &nbsp;
<br />
<asp:CustomValidator ID="CustomValidator1" runat="server"
ErrorMessage="Campo Obligatorio" OnServerValidate="ValidaCheckBox">
</asp:CustomValidator>

.vb

Protected Sub ValidaCheckBox(ByVal sender As Object, ByVal args As ServerValidateEventArgs)

args.IsValid = False
Dim i As Integer
For i = 0 To checksecteur.Items.Count - 1
If checksecteur.Items(i).Selected = True Then
args.IsValid = True
End If
Next
End Sub

Muchas gracias
Volver arriba

Respuestas
Mostrar de en 15
#2 - 01/07/2009 0:09:32 Reporta abuso | Link Permanente
Vicente Garcia Zuñiga
Usuario no registrado
RE: Validar checkboxlist

Responder Citar
Pues tendiras que ver como lo quieres hacer yo lo que yo  aria es esto
una funcion javascript
<script language="javascript" type="text/javascript">
        function isMinimumChecked() {

            var chkText = '';

            var chktable = document.getElementById('<%=checksecteur.ClientID %>'); //ID of the CheckBoxList control
            var chktr = chktable.getElementsByTagName('tr');

            var checkCount = 0;

            var minSelection = 1; // The minimum number of selections that have to be made


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

                var chktd = chktr[i].getElementsByTagName('td');
                for (var j = 0; j < chktd.length; j++) {

                    var chkinput = chktd[j].getElementsByTagName('input');
                    var chklabel = chktd[j].getElementsByTagName('label');

                    for (k = 0; k < chkinput.length; k++) {
                        var chkopt = chkinput[k]; if (chkopt.checked) {

                            checkCount++;

                            if (checkCount >= minSelection) {
                                document.getElementById('<%=HiddenField1.ClientID %>').value = 'True';
                                return true;
                               

                            }

                        }

                    }

                }

            }
            document.getElementById('<%=HiddenField1.ClientID %>').value = 'False';
            return false;

        }


       

    </script>


 <asp:CheckBoxList ID="checksecteur" runat="server" RepeatColumns="2"  Height="146px" Width="494px" >
                    <asp:ListItem>Agroalimentaire</asp:ListItem>
                    <asp:ListItem>BTP</asp:ListItem>
                    <asp:ListItem>Education et Formation</asp:ListItem>
            </asp:CheckBoxList>
            <asp:Label ID="lbMessage" Text="" runat="server"></asp:Label>
            <asp:Button ID="btnPrueba" runat="server" Text="Validar" OnClientClick="isMinimumChecked();" />
            <asp:HiddenField ID="HiddenField1" runat="server" />


 Protected Sub btnPrueba_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles btnPrueba.Click
        If HiddenField1.Value = "True" Then
            Response.Write("Hola")
            lbMessage.Text = ""
        Else
            lbMessage.Text = "Seleccione al Menos una Opcion"

        End If




    End Sub
Volver arriba
Mostrar de en 15