C# asp.net中列表框的验证程序

C# asp.net中列表框的验证程序,c#,asp.net,validation,listbox,C#,Asp.net,Validation,Listbox,我有一个列表框必需的字段验证器,它在列表框中没有条目时验证并显示错误,但当我向列表框添加项时,它仍然显示错误。当我选择我添加的列表框项目并单击submit时,它工作正常。如何验证列表框。列表框的内容不会发送到服务器,只发送选定的项目。这就是表单在HTTP中的工作方式。添加项目后选择项目,或将其放入隐藏的表单字段(通过脚本)以发送到服务器 有多种方法可以通过脚本实现这一点。我确实找到了这个控制器(虽然我没有使用过),我相信它能为您做到这一点: 这里还将更详细地介绍这一点: 其中,他们使用jQuer

我有一个列表框必需的字段验证器,它在列表框中没有条目时验证并显示错误,但当我向列表框添加项时,它仍然显示错误。当我选择我添加的列表框项目并单击submit时,它工作正常。如何验证列表框。

列表框的内容不会发送到服务器,只发送选定的项目。这就是表单在HTTP中的工作方式。添加项目后选择项目,或将其放入隐藏的表单字段(通过脚本)以发送到服务器

有多种方法可以通过脚本实现这一点。我确实找到了这个控制器(虽然我没有使用过),我相信它能为您做到这一点:

这里还将更详细地介绍这一点: 其中,他们使用jQuery选择回发时的项目:

<asp:ListBox ID="lst_newGrpMembers" 
             DataValueField="Name" 
             SelectionMode="Multiple"
             Width="120px" 
             ToolTip="Press ctrl to select multiple users" 
             runat="server">
</asp:ListBox>

<asp:RequiredFieldValidator ID="RequiredFieldValidator1" 
                            runat="server" 
                            ControlToValidate="lst_newGrpMembers"
                            ErrorMessage="Atleast one member required" 
                            CssClass="Error" 
                            Text="*Atleast one member required"
                            ValidationGroup="CreateGroupValidationGroup">
</asp:RequiredFieldValidator>

问题在于,它正在验证ListBox中是否有选定的值。当您发布它时,您可能只会收到列表框的选定值。将项目添加到列表框时,请将“选定”属性设置为true,并禁用列表框以避免取消选择

像这样:


function save() {
$("#lstFiles").each(function () {
      $("#lstFiles option").attr("selected", "selected");
});
return true;
}

希望有帮助。

RequiredFieldValidator
上,尝试将
InitialValue
设置为空字符串:

    ListItem myItem = new ListItem();
    myItem.Text = TextBox1.Text;
    myItem.Selected = true;
    ListBox1.Items.Add(myItem);


我无法禁用它,因为我有一个按钮可以从列表框中删除项目。您的按钮是否可以在每次删除所有项目或一次仅删除一个项目?即使我选择了多个项目,该按钮也只能在一次单击中删除一个项目。您可以提供一个下拉列表来删除项目。或者,您可以在提交之前通过编程选择项目。也许需要一些AJAX。或者javascript,如果您知道加载到浏览器时dos ListBox转换的控件类型。
<asp:RequiredFieldValidator ID="RequiredFieldValidator1" runat="server"          
    InitialValue=""
    ControlToValidate="lst_newGrpMembers" 
    ErrorMessage="Atleast one member required"  
    CssClass="Error"  
    Text="*Atleast one member required" 
    ValidationGroup="CreateGroupValidationGroup"> 
</asp:RequiredFieldValidator>