繁体   English   中英

具有InitialValue属性的ASP.Net RequiredFieldValidator错误?

[英]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.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM