ASP.NET MVC- 변경 오류 클래스 이름을 변경합니다
-
20-09-2019 - |
문제
ASP.NET MVC에서 필드 검증을 할 때 다음 오류 CSS 클래스가 생성됩니다.
- 입력 검증 오류
- 필드-검증 오류
생성 된 오류 클래스의 이름을 변경할 수있는 방법이 있습니까?
나는 xval을 사용합니다.
해결책
나는 xval에 대해 잘 모르겠지만 ASP.NET MVC 측면이 갈 때까지 출처 이 값을 나타내는 정적 리드 론적 문자열이 있음을 알 수 있습니다.
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이 jQuery 유효성 검사를 사용하는 경우 (내가 생각합니다 ...?) 'ErrorClass'옵션의 기본값을 변경할 수 있습니다. 내 대답 그 길을 따라 당신을 도울 수 있습니다.
hths,
찰스
다른 팁
내가 한 일은 다음과 같습니다.
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>
제휴하지 않습니다 StackOverflow