[英]ASP.Net RequiredFieldValidator bug with the InitialValue property?
我刚刚发现这种奇怪的行为,这是错误还是我错过了什么?
<asp:TextBox runat="server" Text="" ID="txtSomething" />
<asp:RequiredFieldValidator
ErrorMessage="errormessage"
ControlToValidate="txtSomething"
runat="server"
Text="(*) Required"
SetFocusOnError="true"
EnableClientScript="true"/>
使用这个简单的代码,即使我写了一个充满空格的字符串,验证也可以正常工作
但是,如果我像这样添加InitialValue
属性:
<asp:TextBox runat="server" Text="lol" ID="txtSomething" />
<asp:RequiredFieldValidator
ErrorMessage="errormessage"
ControlToValidate="txtSomething"
runat="server"
Text="(*) Required"
SetFocusOnError="true"
EnableClientScript="true"
InitialValue="lol"/>
注意我添加了InitialValue =“ lol”和Text =“ lol”
现在,如果我删除文本,则大声笑验证将被忽略
为什么??
仔细查看MSDN描述:
使用此属性可以指定输入控件的初始值。
仅当关联的输入控件的值在失去焦点时匹配此InitialValue时,验证才会失败。
我认为这是不言而喻的。
如果使用Visual Studio,则可以看到“ Solution Explorer / References / System”。
双击并搜索,您将看到“ RequiredFieldValidator是一个类,而InitialValue是一个变量”
否。TextBox InitialValue不知道
1哈哈哈哈是
2哈哈“”否
3“”大声笑
4“”“”是
从那以后,您可以使用InitialValue来比较TextBox的值。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.