我希望必填字段验证器仅在出现错误时才可见..不是一直..我怎样才能做到这一点?
<asp:RequiredFieldValidator
runat="server"
ControlToValidate="Editor1"
ErrorMessage="fffffff"
ForeColor="#CC0000"
Display="Dynamic" />
一旦我运行页面,错误消息就会出现..我希望它在出现错误时出现..当该字段为空时!
我希望必填字段验证器仅在出现错误时才可见..不是一直..我怎样才能做到这一点?
<asp:RequiredFieldValidator
runat="server"
ControlToValidate="Editor1"
ErrorMessage="fffffff"
ForeColor="#CC0000"
Display="Dynamic" />
一旦我运行页面,错误消息就会出现..我希望它在出现错误时出现..当该字段为空时!
当前页面中出现问题的唯一原因是,在页面加载事件中,某个地方Page.Validate()
被调用,您需要检查它。
我已经在最后测试了这个示例,并且在页面加载时不会向我触发验证器。
您可以在单独的新页面中尝试此操作吗?
<asp:TextBox ID="TextBox1" runat="server"></asp:TextBox><asp:RequiredFieldValidator ID="RequiredFieldValidator1"
runat="server"
ControlToValidate="TextBox1"
ErrorMessage="fffffff"
ForeColor="#CC0000"
Display="Dynamic" />
<asp:Button ID="Button1" runat="server" Text="Button" />
如果你检查上面提到的例子,它不会在页面加载时触发验证器,但是你可以添加这个代码,你会发现,验证器在页面加载时被触发..
protected void Page_Load(object sender, EventArgs e)
{
Page.Validate();
}
请注意,我已经在新页面上测试了这两种情况,只需尝试一下,您就会明白问题所在。
如果您考虑一下,在页面加载时该字段为空......因此是一个错误。给 requiredfieldvalidator 的属性,InitialValue=""
它应该给你你想要的。
将必填字段验证器的显示属性设置为动态