模板化验证总结控制

时间:2011-10-21 10:19:13

标签: c# asp.net .net webforms controls

之前似乎没有这样的问题。我在哪里可以找到模板化的ValidationSummary控件?所以我可以在其中添加一些html:div,h2 inside和一个带id="ValidationSummaryMessage"的Literal来呈现文本而没有不必要的列表项,br。互联网上有免费组件吗?我知道我可以为自己写一个,但我太懒了: - )

非常感谢

1 个答案:

答案 0 :(得分:0)

一种方法(即使对于懒惰的方法:-))迭代验证器并从后端创建自己的Html消息:

StringBuilder myCustomHtml = new StringBuilder();
foreach (Control validator in this.Page.Validators)
{
    IValidator currentValidator = validator as IValidator;
    if (currentValidator != null && !currentValidator.IsValid)
    {
        myCustomHtml.AppendFormat("Bla Foo is missing");
    }
}

或类似的东西(尚未测试)。它应该给你完全控制,但你应该知道Page.Validators中的控制顺序是由设计过程中控制树的结构决定的。缺点是需要回发才能实现。

另一种方法是在jquery中捕获事件并在那里添加自定义标记和文本。

然而,搜索我找到了这个解决方案:inherit from asp:validationsummary