当我不在现场验证Asp.Net 视,它的产生以下错误css类:

  • 输入确认错误
  • 现场验证错误

有没有办法我可以改变姓名的错误类产生的呢?

我用xVal.

有帮助吗?

解决方案

我不知道xVal但尽的ASP.NET 视方面的事情去,如果你看一看 你会看到有一些静态只读串,表示这些价值观。

public static readonly string ValidationInputCssClassName = "input-validation-error";
public static readonly string ValidationMessageCssClassName = "field-validation-error";
public static readonly string ValidationSummaryCssClassName = "validation-summary-errors";

所以要么你编辑源到你喜欢的(也可以修复xVal)或改变输代码使用不同的价值观。

如果xVal使用的字段。(我认为它不会...?) 你可以改变它的默认值为'errorClass'的选择。 我的答案在这里 可以帮助你沿着这条道路走下去。

高温高剪,
查尔斯

其他提示

这是我做了什么:

private void ChangeValidationClassNames()
{
    var helper = new HtmlHelper(new ViewContext(), new ViewPage());
    SetPublicStaticReadonly("ValidationInputCssClassName", helper, "errInput");
    SetPublicStaticReadonly("ValidationMessageCssClassName", helper, "errMsg");
}

public void SetPublicStaticReadonly(string readonlyPropName, object instance, object value)
{            
    var field = instance.GetType().GetField(readonlyPropName, BindingFlags.Static | BindingFlags.Public);
    if (field == null)
        throw new NullReferenceException(string.Format("public static readonly field '{0}' not found in '{1}'", readonlyPropName, instance));
    field.SetValue(instance, value);
}

更清洁溶液可以是:

<script type="text/javascript">
    $(document).ready(function(){
        $('.input-validation-error').addClass('CustomErrorClass').removeClass('input-validation-error');
        $('.field-validation-error').addClass('CustomErrorClass').removeClass('field-validation-error');
    });
</script>

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top