asp.net – 如何验证用户选择至少一个复选框?
|
我有一个复选框组控件,我想要求用户至少检查一个框,无论他们检查每一个,或3,甚至只有一个。 在asp.net的验证控件的精神,我可以使用来强制这。我也使用Ajax验证扩展器,所以如果它可能看起来像其他控件,而不是一些cheesy服务器验证方法在codebehind将是很好。 <asp:CheckBoxList RepeatDirection="Horizontal" RepeatLayout="Table" RepeatColumns="3" ID="ckBoxListReasons" runat="server">
<asp:ListItem Text="Preliminary Construction" Value="prelim_construction" />
<asp:ListItem Text="Final Construction" Value="final_construction" />
<asp:ListItem Text="Construction Alteration" Value="construction_alteration" />
<asp:ListItem Text="Remodel" Value="remodel" />
<asp:ListItem Text="Color" Value="color" />
<asp:ListItem Text="Brick" Value="brick" />
<asp:ListItem Text="Exterior Lighting" Value="exterior_lighting" />
<asp:ListItem Text="Deck/Patio/Flatwork" Value="deck_patio_flatwork" />
<asp:ListItem Text="Fence/Screening" Value="fence_screening" />
<asp:ListItem Text="Landscape - Front" Value="landscape_front" />
<asp:ListItem Text="Landscape - Side/Rear" Value="landscape_side_rear" />
<asp:ListItem Text="Other" Value="other" />
</asp:CheckBoxList>
解决方法这很容易做验证服务器端,但我假设你想做它的客户端?JQuery可以很容易地做到这一点,只要你有一些东西,所有的复选框控件有共同使用作为选择器,如类(CssClass在你的.NET控件)。您可以创建一个简单的JQuery函数并将其连接到ASP.NET自定义验证器。记住如果你去自定义验证器路由,以确保你检查它的服务器端,以及如果javascript不工作,你不会得到一个免费的服务器端检查像其他.NET验证器。 有关自定义验证器的更多信息,请查看以下链接:www.asp.net和 你不需要使用JQuery,它只是使JavaScript函数迭代,看看所有的复选框控件更容易,但你可以只使用香草javascript,如果你喜欢。 这里是一个例子,我发现在:Link to original <asp:CheckBoxList ID="chkModuleList"runat="server" >
</asp:CheckBoxList>
<asp:CustomValidator runat="server" ID="cvmodulelist"
ClientValidationFunction="ValidateModuleList"
ErrorMessage="Please Select Atleast one Module" ></asp:CustomValidator>
// javascript to add to your aspx page
function ValidateModuleList(source,args)
{
var chkListModules= document.getElementById ('<%= chkModuleList.ClientID %>');
var chkListinputs = chkListModules.getElementsByTagName("input");
for (var i=0;i<chkListinputs .length;i++)
{
if (chkListinputs [i].checked)
{
args.IsValid = true;
return;
}
}
args.IsValid = false;
}
边注:JQuery只是一个小js文件包括你需要添加到你的页面。一旦你拥有它,你可以使用所有的JQuery你喜欢。没有什么可以安装,它将完全支持在下一个版本的Visual Studio我想。 (编辑:安卓应用网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
- asp.net-mvc – 在mvc中以MM / dd / YYYY格式验证日期
- 如何在ASP.NET自定义控件中持久保存List属性?
- asp.net – 如何在Web / Windows窗体中将IronRuby或IronPyt
- 有关ASP.NET中会话的要点
- asp.net-mvc – 是否有一个ASP MVC与JSTL标签等效?
- asp.net – dbo.aspnet_Users和dbo.aspnetUsers之间有什么区
- asp.net-mvc – 如何使用MVC 4制作提交按钮
- ASP.NET Response.Cache.SetNoStore()与Response.Cache.Set
- asp.net-web-api – 如何配置Web API 2和结构图
- asp.net-mvc-3 – ASP.NET MVC 3 _Layout.cshtml控制器
- 在经典ASP中对集合进行排序
- asp.net-mvc-2 – iframe,跨域Cookie,p3p策略和s
- asp.net-mvc – @ Html.ActionLink如何添加一个查
- 如何使用ASP.NET身份实现多租户用户登录
- asp.net-mvc-3 – 将原始html转储到Telerik网格
- asp.net-mvc – 双值绑定问题
- 如何为ASP.NET_SessionId cookie设置HttpOnly?
- ASP.NET GridView SortedAscendingHeaderStyle不
- ASP.NET MVC ASP.NET WebForms,为什么?
- asp.net-core – Razor模板中的特殊字符未正确编
