【问题标题】:Limiting Required Field Validator to One Set of Controls (ASP.NET)将必填字段验证器限制为一组控件 (ASP.NET)
【发布时间】:2009-07-22 15:05:45
【问题描述】:

我有一个必填字段验证器附加到文件上传控件。当用户点击插入按钮将图像插入到控件旁边的 html 编辑器中时,如果文件上传文本框中没有任何内容,则验证器将触发。效果很好;但是,当单击页面底部的保存按钮时,如果文件上传控件为空,它将触发所需的验证器。我必须做什么才能使验证器只能在单击插入按钮时触发?

如果回答正确,可加分:

如果我希望一个按钮属于多个验证组怎么办???

【问题讨论】:

    标签: asp.net validation


    【解决方案1】:

    您可以指定一个验证组。

    例如:

    在您的RequiredFieldValidator 中设置ValidationGroup="Upload"

    在插入按钮中指定要上传的验证组,但不要在保存按钮上指定验证组。

    【讨论】:

    • 这是最好的答案。谢谢。但是,我必须为保存按钮指定一个不同的验证组,因为如果我不这样做,它仍然会验证文件上传。
    • 如果你能回答这个问题,还有一个加一......如果我希望我的按钮位于两个或更多组中怎么办?
    • 我不确定您是否可以在客户端执行此操作。你愿意接受服务器端的检查吗?例如Page.Validate("Group1") Page.Validate("Group2") if (Page.IsValid) // 在两个组都通过时继续
    【解决方案2】:

    大多数控件都有一个名为“CausesValidation”的布尔属性。如果您将其设置为 false 以用于您希望与之交互的控件而不触发验证器,它应该可以解决问题。

    【讨论】:

    • 这是一个很好的答案。但是,这并不完全是我想要的,因为我确实希望“保存”按钮进行验证,而不是那个文件上传控件。尽管如此 +1。
    【解决方案3】:

    SaveButton 的 ValidationGroup 是否与验证器相同?这将导致此错误。

    【讨论】:

      猜你喜欢
      • 2011-11-24
      • 1970-01-01
      • 1970-01-01
      • 2023-03-30
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2013-08-21
      相关资源
      最近更新 更多