【问题标题】:Display a message if client validation fails?如果客户端验证失败则显示消息?
【发布时间】:2010-10-07 11:11:16
【问题描述】:

我正在为一个实现 ASP.NET 验证(包括客户端)的网站编写申请表。

如果客户端验证失败,我需要在页面底部显示一条消息。类似于“请返回并检查您的答案”之类的内容。

问题是,提交按钮的 OnClientClick 事件显然在客户端验证之前触发。

知道如何解决这个问题吗?

【问题讨论】:

    标签: c# javascript asp.net validation


    【解决方案1】:

    RequiredFieldValidator 上,如果同时使用ErrorMessageText 属性,ErrorMessage 的值将出现在ValidationSummary 中,而Text 的值将出现在@ 的位置987654327@.

    例如:

    <RequiredFieldValidator 
    ErrorMessage="This will appear in the summary at the bottom of the page." 
    Text="This will appear in the middle of the page." 
    .../>
    

    所以要从摘要中隐藏ErrorMessage,只需将其设置为空字符串:

    ErrorMessage=""
    

    【讨论】:

      【解决方案2】:

      您是否在按钮上设置了CausesValidation 属性? 你的OnClientClick 方法在做什么?

      据我了解,您正在尝试通过实现自己的功能来显示验证消息来重新发明轮子。您应该使用ValidationSummary 控件向用户显示消息。您还应该删除您的自定义 OnClientClick 函数。

      【讨论】:

      • 是的,我愿意,而且我的 OnClientClick 方法正在显示“请返回...”消息。问题是即使验证成功,在表单提交之前也会短暂看到此消息。
      • 我试图这样做,但我一定错过了什么。如何将 ValidationSummary 设置为仅显示一些文本,而不是提供所有错误的摘要?我实际上只是希望它显示“请返回并检查您的答案。”
      • @Liggi,我猜你有一堆RequiredFieldValidators 之类的,对吧?如果您将这些上的ErrorMessage 设置为空字符串,并将ValidationSummary 控件上的HeaderText 消息设置为“请...”,我认为您应该能够实现您想要的
      • 没错,不幸的是我也在使用RequiredFieldValidators的错误信息!所以我不能那样做。
      • @Liggi,嗯。如何使用 css 样式来控制您的 validationsummary 控件的高度,以便它实际显示消息,但它们不可见?这很 hacky :-(
      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2014-07-08
      • 2012-09-15
      • 2012-08-24
      • 1970-01-01
      • 1970-01-01
      • 2020-08-24
      相关资源
      最近更新 更多