Chr*_*ris 5 asp.net validation drop-down-menu
我有一个下拉列表,我从服务器端加载.
<asp:DropDownList ID="ddlOne" runat="server" CssClass="dropDrownClass" Width="80%">
Run Code Online (Sandbox Code Playgroud)
在服务器端,加载下拉后我正在添加
- 请选择 -
我想确保如果选择它,我会显示错误消息.为此,我写了
<asp:CompareValidator ID="CompareValidator1" runat="server"
ControlToValidate="ddlOne" ValueToCompare="-- Please Select --" Operator="Equal" Type="String" ErrorMessage="CompareValidator"></asp:CompareValidator>
<asp:ValidatorCalloutExtender ID="ValidatorCalloutExtender1" TargetControlID="CompareValidator1" runat="server">
</asp:ValidatorCalloutExtender>
Run Code Online (Sandbox Code Playgroud)
但只要我在下拉列表中选择任何内容,它就会向我显示错误消息.当我将验证器更改为
<asp:CompareValidator ID="CompareValidator1" runat="server"
ControlToValidate="ddlOne" ValueToCompare="0" Operator="Equal" Type="Integer" ErrorMessage="CompareValidator"></asp:CompareValidator>
Run Code Online (Sandbox Code Playgroud)
我收到每个选择的错误信息,除了第一个 - 请选择 - .
请让我知道如何验证下拉列表中的第一项
问题2
我收到双重消息,一个在下拉列表下[显示错误"Carson63000"红色]和一个弹出[验证器呼出].同样的消息.我希望只有验证器标注才能显示该消息.
Car*_*000 12
您的验证器将比较下拉列表的选定项目的值,而不是文本.最简单的方法通常是为"请选择"项的值设置一个空字符串,为其他项设置一个非空值,然后只使用一个RequiredFieldValidator.
另外,a CompareValidatorwith ValueToCompare="-- Please Select --"和Operator="Equal"means:检查下拉列表的值,并验证它是否等于" - Please Select - "; 如果没有,则显示错误.这与你需要的完全相反 - 你想要改变运算符,Operator="NotEqual"如果你想采用的方法CompareValidator.