在C#中验证复选框和单选按钮

时间:2010-05-10 12:52:43

标签: c# asp.net

我正在使用c#进行编码!

下面是我的html for checkbox和radion按钮

  <input type="radio" style="float: left;" name="documents" id="Checkbox9" value="yes"
                        runat="server" />
                    <label style="width: 35px!important;" class="checkbox">
                        <%=GetResourceString("c_HSGStudent")%>
                    </label>
                    <input type="radio" style="float: left;" name="documents" id="Checkbox10" value="no"
                        runat="server" />
                    <label style="width: 25px!important;" class="checkbox">
                        <%=GetResourceString("c_HSGParent")%>
                    </label>
                    <input type="radio" style="float: left;" cheked name="documents" id="Radio1" value="yes"
                        runat="server" />
                    <label style="width: 35px!important;" class="checkbox">
                        <%=GetResourceString("c_HSGStudent")%>
                    </label>
                    <input type="radio" style="float: left;" name="documents" id="Radio2" value="no"
                        runat="server" />
                    <label style="width: 25px!important;" class="checkbox">
                        <%=GetResourceString("c_HSGParent")%>
                    </label>

你可以看到我有两个复选框和两个单选按钮,我的问题是在我的提交按钮上单击我要检查用户是否已选中至少一个复选框或单选按钮。如果我们可以像(customvalidator)那样使用.NET解决方案,那就太好了。

请建议!

由于

2 个答案:

答案 0 :(得分:4)

首先,在页面中添加一个CustomValidator ......

<asp:CustomValidator runat="server" ID="CheckBoxRequired" EnableClientScript="true" 
    OnServerValidate="CheckBoxRequired_ServerValidate" 
    OnClientValidate="CheckBoxRequired_ClientValidate">*</asp:CustomValidator> 

然后,您可以使用简单的jquery调用从客户端函数验证它们......

<script type="text/javascript>

function CheckBoxRequired_ClientValidate(sender, e) 
{ 
    e.IsValid = $("input[name='documents']").is(':checked'); 
} 

</script>

服务器端验证的代码隐藏......

protected void CheckBoxRequired_ServerValidate(object sender, ServerValidateEventArgs e) 
{ 
    e.IsValid = Checkbox9.Checked || Checkbox10.Checked || Radio1.Checked || Radio2.Checked;
} 

答案 1 :(得分:0)

创建自定义验证程序,然后检查控件是否符合servervalidate事件处理程序中的条件。