【问题标题】:Validate dropdown list using required field validator not working使用必填字段验证器验证下拉列表不起作用
【发布时间】:2017-03-14 10:05:13
【问题描述】:

我有一个 asp 下拉菜单,我正在尝试验证它,但验证不起作用。

我的下拉列表和验证器:

<asp:DropDownList CssClass="form-control"
    runat="server" ID="cmb_Addresses"
    ValidationGroup="ShippingAddress">
</asp:DropDownList>
<asp:RequiredFieldValidator ControlToValidate="cmb_Addresses" 
    ValidationGroup="ShippingAddress" 
    InitialValue="0" 
    Display="dynamic" 
    ErrorMessage='Please select an address' 
    runat="server"/>

这是填充下拉列表的方法:

private void SetupAddresses()
{
    var accountService = new AccountService();
    var userService = new UserService();

    var username = userService.GetLoggedInUser();

    var addresses = accountService.GetAddressesForUser(username);

    cmb_Addresses.Items.Clear();
    cmb_Addresses.Items.Add(new System.Web.UI.WebControls.ListItem("--Please Select--", "0"));

    foreach (var address in addresses)
    {
        cmb_Addresses.Items.Add(new System.Web.UI.WebControls.ListItem(address.Name, GetAddressValue(address)));
    }
}

我已经尝试了我在网上找到的所有建议,但它们都不起作用。

哦,这个方法是在 !IsPostback 中调用的

【问题讨论】:

    标签: asp.net dropdown requiredfieldvalidator


    【解决方案1】:

    您是否将正确的ValidationGroup 添加到执行回发的按钮?因为我测试了你的 sn-p 并且它有效。

    <asp:Button ID="Button1" runat="server" Text="Button" ValidationGroup="ShippingAddress" />
    

    如果您确实将其添加到按钮,则页面上的某处可能存在干扰验证器的 javascript 错误。如果出现错误,验证器将无法工作并发布表单。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2017-07-29
      • 2011-07-15
      • 2014-04-14
      • 2016-05-09
      • 2011-05-03
      • 1970-01-01
      相关资源
      最近更新 更多