2016-10-17 6 views
0

오늘 유효성 검사 메시지를 테스트 할 때 ASP.NET Core taghelper의 이상한 동작을 발견했습니다.ASP.NET 코어 유효성 검사 도우미 이상한 동작

jquery-validate 및 jquery-validate-unobtrusive가 제 위치에 없습니다.

이 잘 작동 :

<span asp-validation-for="Name" class="text-danger"></span> 

이 작동하지 않습니다 :

<span asp-validation-for="Name" class="text-danger" /> 

어떤 생각이 왜?! 이것은 버그입니까?

입력 해 주셔서 감사합니다.

+0

중복 가능한 http://stackoverflow.com/questions/2816833/can-a-span-be-closed-using-span – Jonathan

+0

감사합니다! HTML 5에서도 유효하지 않다는 것을 몰랐습니다. – Simon

답변

1

@Jonathan이 정확합니다.이 요소는 자동으로 닫힐 잘못된 요소입니다. 자체 폐쇄 태그를 만들면 태그가 void element임을 나타냅니다. 즉 태그 내부에 내용이 없음을 의미합니다. 스팬 태그에는 내용이 완전히 있습니다!

그러나 핵심에서 작동하지 않는 이유는 because what happens on this line입니다. 자동 닫기 태그를 사용하면 output 변수의 TagMode 속성이 SelfClosing으로 설정되고 TagBuilder은 콘텐츠가없는 void 요소이기 때문에 메시지 내용을 입력하지 않습니다.

끝에 </span>이있는 경우 모드는 StartTagAndEndTag으로 바뀌고 내용이 제대로 추가됩니다.