当前位置 : 主页 > 网络编程 > ASP >

asp.net – 如何验证列表框是否为空(客户端)

来源:互联网 收集:自由互联 发布时间:2021-06-24
我正在使用ASP.NET 3.5. 我有一个用户必须添加项目的列表框(我已经为此编写了代码).我的要求是必须至少将一个项目添加到列表框中,否则他们无法提交表单.我在页面上有几个其他验证器
我正在使用ASP.NET 3.5.
我有一个用户必须添加项目的列表框(我已经为此编写了代码).我的要求是必须至少将一个项目添加到列表框中,否则他们无法提交表单.我在页面上有几个其他验证器,它们都写入ValidationSummary控件.我希望这个列表框验证也可以写入Validation Summary控件.任何帮助是极大的赞赏.谢谢. 放入自定义验证器,向其中添加所需的错误消息,双击自定义验证器以获取事件处理程序的代码,然后您将实现服务器端,如下所示:

protected void CustomValidator1_ServerValidate(object source, ServerValidateEventArgs args) 
{
        args.IsValid = ListBox1.Items.Count > 0; 
}

您也可以实现客户端javascript.

我只是把它扔到一个页面上并快速测试,所以你可能需要稍微调整一下:( button1只在列表框中添加一个项目)

<script language="JavaScript">
<!--
  function ListBoxValid(sender, args)
  {
      args.IsValid = sender.options.length > 0;
  }
// -->
</script>    
<asp:ListBox ID="ListBox1" runat="server"></asp:ListBox>
<asp:TextBox ID="TextBox1" runat="server"></asp:TextBox>
<asp:Button ID="Button1" runat="server" onclick="Button1_Click" Text="Button" ValidationGroup="NOVALID" />
<asp:Button ID="Button2" runat="server" Text="ButtonsUBMIT"  />

<asp:CustomValidator ID="CustomValidator1" runat="server" 
ErrorMessage="CustomValidator" 
onservervalidate="CustomValidator1_ServerValidate" ClientValidationFunction="ListBoxValid"></asp:CustomValidator>

如果向页面添加验证摘要,只要ValidationGroup相同,如果ListBox或其他可收集的控件中没有项目,只要ValidationGroup相同,那么错误文本应显示在该摘要中.

网友评论