Asp.net mvc 设置MVC3验证消息的样式

Asp.net mvc 设置MVC3验证消息的样式,asp.net-mvc,asp.net-mvc-3,validation,jquery-validate,Asp.net Mvc,Asp.net Mvc 3,Validation,Jquery Validate,我喜欢MVC3中的默认验证消息,但现在我要转移到一些更大的表单上,表单元素需要紧密地放在一起。这会导致生成的默认验证消息出现问题。它们要么换行,导致表单元素下出现一半的消息,要么完全破坏我的表单布局 有人能很好地解决这个问题吗 您认为将验证消息设置为“工具提示”会有帮助吗?希望听到您的建议和解决方案 这完全取决于您的布局。您可以将ValidationMessage放在您想要的任何位置,并按照您想要的方式设置其样式。只需查看输出的HTML,并找出如何按照您的需要排列消息。默认验证消息是SPAN。如

我喜欢MVC3中的默认验证消息,但现在我要转移到一些更大的表单上,表单元素需要紧密地放在一起。这会导致生成的默认验证消息出现问题。它们要么换行,导致表单元素下出现一半的消息,要么完全破坏我的表单布局

有人能很好地解决这个问题吗

您认为将验证消息设置为“工具提示”会有帮助吗?希望听到您的建议和解决方案


这完全取决于您的布局。您可以将ValidationMessage放在您想要的任何位置,并按照您想要的方式设置其样式。只需查看输出的HTML,并找出如何按照您的需要排列消息。

默认验证消息是
SPAN
。如果要使用不同的元素(例如,
IMG
),则需要创建自定义验证消息扩展名。查看MVC中的
ValidationMessageHelper
方法,了解默认
SPAN
是如何构建的。我认为您可以为重用自定义属性,如
datavalmsg。此外,如果您使用的是unobtrusive ajax验证,则需要修改jquery.validate.unobtrusive.js。

我认为我们需要了解有关布局的更多信息才能回答这个问题。有很多方法可以设置验证消息的样式。但是,包装是一种正常的行为。验证是否与表单元素内联?您是否考虑过在表单元素的右侧为它们提供自己的列空间?