代码之家  ›  专栏  ›  技术社区  ›  Dewey

如何仅在摘要或div中显示MVC 3不引人注目的验证错误

  •  1
  • Dewey  · 技术社区  · 13 年前

    该项目是MVC 3,具有Razor视图和JQuery不引人注目的验证。我们的网页设置为标签位于文本框上方,验证消息位于文本框下方。通常,文本框大约有150像素宽,因此验证消息往往又窄又高。它看起来不好看。

    我更喜欢使用Html.ValidationMessageFor帮助程序将所有消息放在页面顶部,最好是放在项目符号列表中。我还没有找到一种方法来“关闭”文本框旁边消息的显示,尽管我可以在提交时使用验证摘要来捕捉属性错误。

    许多验证都发生在弹出窗口中,我们使用Telerik进行弹出窗口。

    如果可能的话,我宁愿避免编辑开源的js文件。

    2 回复  |  直到 13 年前
        1
  •  4
  •   Tommy    13 年前

    移除 Html.ValidationMessageFor() 视图中的项目=>这将禁用显示在文本框旁边的消息。

    接下来,添加 Html.ValidationSummary(false, "Your Message") 在您希望项目符号列表出现的位置(必须在 using(html.BeginForm() 呼叫)。此Html Helper中的false是一个重载,用于指示摘要不要排除属性错误。对于样式,您需要做一些CSS工作。

        2
  •  1
  •   Chris    13 年前

    您可能需要考虑使用 <%: Html.ValidationSummary(true) %> 加成这创造了你想要的东西。