|
#1 -
05/06/2009 15:19:38
|
Reporta abuso
|
Link Permanente
|
|
Validar checkboxlist
|
|
|
|
|
|
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> <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
|
|
|
|
|
|
#2 -
01/07/2009 0:09:32
|
Reporta abuso
|
Link Permanente
|
|
RE: Validar checkboxlist
|
|
|
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
|
|
|
|
|