2014-09-23 2 views
1

그래서 디지털 대행사에서 HTML을 MVC로 변환해야합니다. Html.CheckboxFor (..)는 체크 박스를 선택하지 않은 것을 false로 캡처하기 위해 숨겨진 입력 필드를 추가로 생성한다는 것을 알고 있습니다.MVC 5 Html 도우미 CheckBoxFor를 면도기 부분에서 선택할 수 없습니다.

그러나 내 페이지에서 내 확인란을 선택할 수 없습니다. Firebug에서 <input type="hidden....>을 삭제하면 확인란을 선택할 수 있습니다.

<div class="terms well"> 
    <div class="checkbox"> 
     <label class="checkbox-inline"> 
      <input type="checkbox" id="authorize" name="authorize"> 
      <span class="checkbox-display"><span class="checkbox-display-inner fa fa-check"></span></span> 
      <span class="checkbox-label">I accept full responsibility for the information I provide on this form.</span> 
     </label> 
    </div> 
</div> 

(HTML HTML 헬퍼에 의해 생성 된 HTML (나에게 제공)

생성 된 HTML은 (마찬가지로 나는 체크 박스를 클릭하고 시각적으로 선택 할 수 없습니다) - 나는 스타일을 계속 사용할 수 있을지 모르겠으므로 라벨을 사용하려고 애쓰지 않았습니다.)

<div class="terms well"> 
    <div class="checkbox"> 
     <label class="checkbox-inline"> 
      <input type="checkbox" value="true" name="AuthorisePayment" id="AuthorisePayment"><input type="hidden" value="false" name="AuthorisePayment"> 
      <span class="checkbox-display"><span class="checkbox-display-inner fa fa-check"></span></span> 
      <span class="checkbox-label terms-credit" style="display: inline-block;">I accept full responsibility for information and authorisations I provide on this form.</span> 
     </label> 
    </div> 
</div> 

누구나 아이디어가 있습니까? 나는이 게시물에 답을 찾는 데 도움이되는 것을 100 % 포함하지 않습니다.

면도기보기에는 다음이 포함

<div class="terms well"> 
    <div class="checkbox"> 
     <label class="checkbox-inline"> 
      @Html.CheckBoxFor(model => model.AuthorisePayment) 
      <span class="checkbox-display"><span class="checkbox-display-inner fa fa-check"></span></span> 
      <span class="checkbox-label terms-credit">@Editable(x => x.PaymentTemplate.CreditCardTerms)</span> 
     </label> 
    </div> 
</div> 

난 그냥 내 행동 컨트롤러에 양식에서 값을 얻을 수 있지만, 그 일의 모델 바인딩 방법은 작동하지 않는 이유를 이해하지 않습니다.

+0

당신은 의미합니까 당신은 그것을 선택할 수 있습니다 무엇 - 당신은 확인하거나 선택을 취소하지 못할 화면에? 또는 올바르게 다시 게시하지 않습니까? –

+0

화면에서 확인 및 선택을 취소 할 수 없습니다. – Jen

+0

그 (것)들을 방해하고있는 javascript가 있습니까? –

답변

1

나는 동일한 문제가있었습니다. Checkboxfor는 모델에서 그의 이름을 가져옵니다. 문제는 2 개 가지 모델이 동일한 속성 있고 모두 동일한 페이지에있을 때 Checkboxfor

는 상술 한 문제가 발생한다. 내 경우에는

, 조직 모델 (1)과 contactperson 모델 (2) 동일한 속성이 있습니다

공공 부울이 isActive을 {얻을; 세트; }

솔루션은 내 경우에는, 그들에게 고유 ID를 부여 :

(1) : @Html.CheckBoxFor(model => model.IsActive).HtmlAttributes(new { id = "organisation_active" }) (2) : @Html.CheckBoxFor(model => model.IsActive).HtmlAttributes(new { id = "contact_active" })

+0

더 이상 테스트 할 수 없지만 문제는 아닌 것 같습니다. 감사 :) – Jen

관련 문제