2017-01-26 1 views
-1

현재 MVC 애플리케이션에서 작업 중입니다. 크롬과 파이어 폭스에서IE에서 MVC JQuery.unobtrusive 클라이언트 측 유효성 검사

<div class="form-group row" id="countRow"> 
    <div class="col-md-4 col-xs-4"> 
     <label class="control-label" for="Entry_Count"></label> 
    </div> 

    <div class="col-md-8 col-xs-8"> 
     @Html.EditorFor(m => m.Entry.Count, new { @class = "date-picker" }) 
     @Html.ValidationMessageFor(model => model.Entry.Count, "", new { @class = "text-danger" }) 
    </div> 
</div> 

,이 작품 : 폼 내부에, 자신이 같이 내장되어

<add key="ClientValidationEnabled" value="true" /> 
<add key="UnobtrusiveJavaScriptEnabled" value="true" /> 

양식 요소 :이 응용 프로그램은 @의 Html.EnableClientSideValidation() 도우미와 눈에 거슬리지 유효성 검사를 사용 잘하지만, IE는 유효성 검사 메시지를 보여줍니다, 나는 양식을 게시 할 때, 그것은 다음과 같이보고, 나에게 그것의 모든 유효성 검사 오류가있는 JSON을 제공합니다 :

{ 
    "Exception": null, 
    "ErrorMessage": "Bitte geben Sie eine Zahl >= 0,002 ein" 
} 

내가 woul 내 사람들에게 IE가 아닌 브라우저를 사용하는 것을 좋아하지만, 곧 그렇게 될 것이라고는 생각하지 않습니다.

이런 일이 누구에게나 일어 났습니까? 아니면 올바른 방향으로 나를 지적 할 수있는 사람이 있습니까? 고맙습니다!

+0

EditorFor, 렌더링이란 무엇입니까? 사용자 정의 편집기 템플릿 (있는 경우)을 게시 할 수 있습니까? 클라이언트 측 소스를 살펴보면 브라우저에서 렌더링 된 입력 요소에 데이터 유효성 검사 속성이 표시됩니까? –

+0

안녕하세요, 답장을 보내 주셔서 감사합니다. 다음은 요소의 모습입니다.

mbaux

+0

설명했듯이 Chrome과 FF에서는 정상적으로 작동하지만 IE는 확인 메시지를 표시하지 않고 제출 버튼을 클릭하면 json을 제공합니다. 양식이 올바르게 채워지면 IE에서도 작동합니다. 유효성 검사 오류에 대한 동작이 이상합니다. – mbaux

답변

0

좋아요, 이건 유효성 검사 자체에 문제가 아니었지만 자바 스크립트 파일을로드하는 조합 (또는 순서)이있는 것처럼 보입니다. 놀고 조금만 실험 해본 결과 해결책을 찾았습니다. jquery 유효성 검사와 내 번들에서 JS 전역화를 제거하고이를 부분 뷰에 별도로 넣었습니다. 이제 작동합니다.

TL; JS 파일로 흔들어서 문제가 해결되었습니다.

관련 문제