ASP.NET RequiredFieldValidator无法与DropDownList Firefox 6一起使用

本文关键字:Firefox 一起 DropDownList NET RequiredFieldValidator ASP | 更新日期: 2023-09-27 18:07:59

在Firefox 6中使用所需的字段验证器验证dropdownlist时出现问题。我的代码适用于除Firefox 6之外的所有浏览器。

发生的情况是,我从下拉列表中选择一个不是默认值的值,然后单击按钮。返回一条错误消息,这意味着即使我选择了不同的字段,验证也失败了。如果我再次执行此操作,并从下拉列表中选择SAME值,然后单击按钮。没有错误消息,它通过了验证。这只会在您第一次选择值时失败,而且仅在Firefox 6中失败。

另一个例子是,加载页面,选择一个值,再次选择相同的值,单击按钮,它就通过了。WTH?

<asp:dropdownlist id="ddlHour" cssclass="select select-small" runat="server">
  <asp:listitem value="" text="" selected="true"></asp:listitem>
  <asp:listitem value="1">1</asp:listitem>
  <asp:listitem value="2">2</asp:listitem>
</asp:dropdownlist>
<asp:requiredfieldvalidator id="rfvHour" initialvalue="" controltovalidate="ddlHour" errormessage="Please select an hour" display="none" validationgroup="banquetForm" runat="server"/>

我稍后在表格中有一个与相同验证组的按钮。如有帮助,我们将不胜感激,谢谢。

ASP.NET RequiredFieldValidator无法与DropDownList Firefox 6一起使用

尝试使用以下方法:

<asp:dropdownlist id="ddlHour" cssclass="select select-small" runat="server">  
  <asp:listitem value="0" Text="" selected="true"></asp:listitem>  
  <asp:listitem value="1">1</asp:listitem>  
  <asp:listitem value="2">2</asp:listitem>  
</asp:dropdownlist>  
      <asp:RequiredFieldValidator ID="HourValidate" runat="server" ControlToValidate="ddlHour" ErrorMessage="Please select an hour" InitialValue="0"></asp:RequiredFieldValidator>

如何使用DropDownList 设置所需的字段验证器

假设你的下拉列表中有这些项目。。

        DropDownList1.Items.Add(new ListItem("--Select--","0"));
        DropDownList1.Items.Add(new ListItem("Kaushal","1"));
        DropDownList1.Items.Add(new ListItem("Naresh","2"));
        DropDownList1.Items.Add(new ListItem("Pankaj", "3"));

然后-:requiredfieldvalidator的控件设置为validate属性为DropDownlist1,并将requiredfieldvalidatorInitialValue属性设置为0,因为这将是
的值--Select--可以在上面显示。

如果我错了,请纠正我,但我认为您使用了错误的验证器。默认情况下,下拉列表总是有一个值,所以要求它是没有意义的。我认为你想做的是进行比较,以确保它不是第一选择。这个页面展示了如何做到这一点的快速演示。

http://forums.asp.net/t/1188035.aspx/1