如何只为多个RequiredFieldValidator显示单个消息?

时间:2012-01-12 12:03:53

标签: asp.net requiredfieldvalidator

如何仅显示多个RequiredFieldValidator的单个邮件,而不是RequiredFieldValidator的单个邮件?

我想如下图所示..

i want to as shown in following image..

我的观点是..

 my view is.

9 个答案:

答案 0 :(得分:12)

您必须使用ValidationSummary控制权。有关详细信息以及如何执行此操作的示例,请参阅此ValidationSummary Class MSDN article。本文包含您要确切了解的内容的示例。

答案 1 :(得分:5)

将HeaderText设置为验证摘要中的“(*)字段是必需的”。

答案 2 :(得分:5)

您可以将每个RequiredFieldValidator的错误消息字段留空并将*放在文本字段中,然后添加ValidationSummary定义其标题文本,错误消息msg这将适用于您的方案。

<asp:RequiredFieldValidator ID="RequiredFieldValidator_overhead_name" runat="server" ControlToValidate="TextBox_overhead_name">*</asp:RequiredFieldValidator>


 <asp:ValidationSummary ID="ValidationSummary_overhead_estimate" runat="server" DisplayMode="SingleParagraph" HeaderText="please insert data into fileds" /> 

答案 3 :(得分:3)

这位先生在这里很简单地解决了这个问题:http://www.cactusoft.com/blog_40

答案 4 :(得分:2)

我可以看到你想要做什么,但ASP.Net验证器很难

我能想到的唯一方法是完全删除ValidationSummary并使用ASP.Net验证器API和JQuery手动创建自己的。

  1. 将所有必需的验证程序更改为ErrorMessage = "*"删除文本值
  2. 删除验证摘要
  3. 在底部添加标签,以充当自定义验证程序摘要。风格红色
  4. 在页面标记脚本中类似
  5. if(!Page_IsValid) {    
        $('#myCustomValidatorSummary').text('Please fill in required fields')
    }

    Page_IsValid来自ASP.Net验证器API。如果页面验证失败,则设置为false。

    当然,这假设您在表单上只有必需的字段验证器。如果有混合,那么你需要通过使用JQuery / javascript迭代客户端上的Page_Validators来检查一个或多个必需的失败

    老实说虽然我不会这样做 - 但实在太难了

    我会这样做 - 对于每个必需的字段验证器 - 设置

    Text="*" 
    ErrorMessage="[Field Name] is mandatory. Please supply a value." or similar.
    

答案 5 :(得分:1)

除了ValidationSummary之外,您还应该使用ASP.NET中的ValidationSummary Control,您还可以使用Group属性将控件分成逻辑组。有关示例,请参阅http://msdn.microsoft.com/en-us/library/system.web.ui.webcontrols.validationsummary.aspx

答案 6 :(得分:1)

快速简便的方法:在ValidationSummary中添加一个CssClass,然后在该类下面设置ul元素的css样式显示:none。

例如:

<style>
.validationSummary ul {display:none}
<stlye>

...

<asp:ValidationSummary CssClass="validationSummary" ...

答案 7 :(得分:0)

使用ValidationSummary

ValidationSummary控件用于显示网页中发生的所有验证错误的摘要。

此控件中显示的错误消息由每个验证控件的ErrorMessage属性指定。如果未设置验证控件的ErrorMessage属性,则不会为该验证控件显示错误消息。

http://asp-net-example.blogspot.in/2008/10/validationsummary-example-how-to-use.html

答案 8 :(得分:0)

要添加到Mike Godin的答案,仅为多个字段验证器显示单个警报消息:

保留所需的个人信息。使用DisplayMode =“BulletList”添加验证摘要,HeaderText =“请提供上述所需信息。”

“BulletList”显示模式在验证摘要DIV中生成无序的LI列表,然后通过样式隐藏UL - 只有“HeaderText”将显示:

    #validationSummary ul {
        display:none;
    } 

<asp:ValidationSummary 
     id="validationSummary" 
     DisplayMode="BulletList"
     EnableClientScript="true"
     HeaderText="Please provide the required information above."
     ValidationGroup="btnSubmit"
     runat="server"/>