asp.Net   发布时间:2022-04-07  发布网站:大佬教程  code.js-code.com
大佬教程收集整理的这篇文章主要介绍了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验证器。

有关自定义验证器的更多信息,请查看以下链接:@L_489_2@和
MSDN

你不需要使用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 – 如何验证用户选择至少一个复选框?全部内容,希望文章能够帮你解决asp.net – 如何验证用户选择至少一个复选框?所遇到的程序开发问题。

如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。