2012-08-01 5 views
1

나는 눈에 거슬리는 검증을 사용하도록 설정했습니다. 내 페이지 소스가 다음과 같이 보입니다.확인란 및 라디오 버튼이있는 유효성 검사 동작

<p> 
    <label> 
     Project Title 
     <br /> 
     <input class="project-title" data-val="true" data-val-required="The Project Title field is required." 
      id="RequestDetail_ProjectTitle" name="RequestDetail.ProjectTitle" type="text" 
      value="" /> 
    </label> 
    <span class="field-validation-valid" data-valmsg-for="RequestDetail.ProjectTitle" 
     data-valmsg-replace="true"></span> </p> <p> 
    <span>Submitted By</span><br /> 
    <span class="inline-container"> 
     <input type="hidden" id="RequestDetail_SubmittedBy" name="RequestDetail.SubmittedBy" 
      value="0" data-type="RequestDetail.SubmittedBy" /><label><input type="radio" data-type="RequestDetail.SubmittedBy" 
       name="_RequestDetail.SubmittedBy" value="1" data-val="true" data-val-required="The Submitted By field is required." />ND</label> 
     | 
     <label> 
      <input type="radio" data-type="RequestDetail.SubmittedBy" name="_RequestDetail.SubmittedBy" 
       value="2" data-val="true" data-val-required="The Submitted By field is required." />NE</label> 
     | 
     <label> 
      <input type="radio" data-type="RequestDetail.SubmittedBy" name="_RequestDetail.SubmittedBy" 
       value="4" data-val="true" data-val-required="The Submitted By field is required." />WY</label> 
     | 
     <label> 
      <input type="radio" data-type="RequestDetail.SubmittedBy" name="_RequestDetail.SubmittedBy" 
       value="8" data-val="true" data-val-required="The Submitted By field is required." />CL</label> 
    </span><span class="field-validation-valid" data-valmsg-for="_RequestDetail.SubmittedBy" 
     data-valmsg-replace="true"></span> </p> <p> 
    <span>Affected Plans</span><br /> 
    <span class="inline-container"> 
     <input type="hidden" id="RequestDetail_AffectedPlans" name="RequestDetail.AffectedPlans" 
      value="0" data-type="RequestDetail.AffectedPlans" /><label><input type="checkbox" 
       data-type="RequestDetail.AffectedPlans" name="_RequestDetail.AffectedPlans" value="1" 
       data-val="true" data-val-required="The Affected Plans field is required." />ND</label> 
     | 
     <label> 
      <input type="checkbox" data-type="RequestDetail.AffectedPlans" name="_RequestDetail.AffectedPlans" 
       value="2" data-val="true" data-val-required="The Affected Plans field is required." />NE</label> 
     | 
     <label> 
      <input type="checkbox" data-type="RequestDetail.AffectedPlans" name="_RequestDetail.AffectedPlans" 
       value="4" data-val="true" data-val-required="The Affected Plans field is required." />WY</label> 
    </span><span class="field-validation-valid" data-valmsg-for="_RequestDetail.AffectedPlans" 
     data-valmsg-replace="true"></span> </p> 

다음은 유효성을 검사 한 결과입니다.

enter image description here

내가 다에게 라디오 버튼이에 표시된 체크 박스와 같은 방식을 적용했습니다. 하지만 라디오 버튼에서 기대했던 것을 얻는 동안 체크 상자에 유효성 검사 오류가 표시되지 않는 이유는 무엇입니까?

답변

1

생각해 보면, 체크 박스는 틱이 있든 없든 유효성 검사를 통과합니다. 그들은 모델의 bool 속성에 의해 뒷받침되며 (아마도) true 또는 false 여야합니다. 그들은 진실이고, 속임을 당하지 않았으며, 거짓임을 알았습니다. 이것은 bool에게는 절대적으로 유효한 값입니다. 이 경우 유일한 유효하지 않은 값은 null이며 확인란을 사용할 수 없습니다.

사용자가 상자를 체크했는지 확인하는 것이 목표라면 here 예제를 보려면 MustBeTrue 유효성 검사기가 필요합니다.

true와 false가 모두 유효한 값이고 사용자가 둘 중 하나를 선택하도록하려면 "예", "아니요"및 "지정하십시오"와 함께 드롭 다운을 옵션으로 사용하십시오.

+0

니스. 그것을 시도하게하십시오. – SaravananArumugam

관련 문제