感谢您使用微软产品。如果您想某些按钮点击时不进行Validator的验证,可以对这些按钮的CausesValidation属性设置为"false":
<asp:Button id="btnExit2Menu" runat="server" Value="Exit"
CausesValidation="false"/>希望能对您有所帮助!
======================
- 微软全球技术中心本贴子仅供CSDN的用户作为参考信息使用。其内容不具备任何法律保障。您需要考虑到并承担使用此信息可能带来的风险。具体事项可参见使用条款(http://support.microsoft.com/directory/worldwide/zh-cn/community/terms_chs.asp)。
为了为您创建更好的讨论环境,请参加我们的用户满意度调查(http://support.microsoft.com/directory/worldwide/zh-cn/community/survey.asp?key=(S,49854782))。
======================
<asp:Button id="btnExit2Menu" runat="server" Value="Exit"
CausesValidation="false"/>希望能对您有所帮助!
======================
- 微软全球技术中心本贴子仅供CSDN的用户作为参考信息使用。其内容不具备任何法律保障。您需要考虑到并承担使用此信息可能带来的风险。具体事项可参见使用条款(http://support.microsoft.com/directory/worldwide/zh-cn/community/terms_chs.asp)。
为了为您创建更好的讨论环境,请参加我们的用户满意度调查(http://support.microsoft.com/directory/worldwide/zh-cn/community/survey.asp?key=(S,49854782))。
======================
仔细看一下duwamish的源码你会发现,在private void ShowPanel(Panel panel, bool visible)方法中对各个validator的visible属性进行了设置。只有当某个validator的visible属性设为true时,这个validator才会起作用。为了说明问题,请看下面这段代码:在aspx文件中:
<asp:requiredfieldvalidator id="RequiredFieldValidator1" runat="server" controlToValidate="TextBox1" errormessage="Address is a required field" display="dynamic" Visible="false">在后端代码中:
private void ImageButton1_Click(object sender, System.Web.UI.ImageClickEventArgs e)
{
this.RequiredFieldValidator1.Visible = true;
foreach (IValidator val in Page.Validators)
{
val.Validate();
}
}试着执行这段代码你会发现,当click这个ImageButton时validator不起作用,而当click这个ImageButton后,RequiredFieldValidator1的Visible属性被设置为true,这时再在后端程序中执行其Validate方法则会起作用。问题比较复杂,不知我是否解释清楚。有什么问题欢迎继续讨论!======================
- 微软全球技术中心本贴子仅供CSDN的用户作为参考信息使用。其内容不具备任何法律保障。您需要考虑到并承担使用此信息可能带来的风险。具体事项可参见使用条款(http://support.microsoft.com/directory/worldwide/zh-cn/community/terms_chs.asp)。
为了为您创建更好的讨论环境,请参加我们的用户满意度调查(http://support.microsoft.com/directory/worldwide/zh-cn/community/survey.asp?key=(S,49854782))。
======================