2010-06-17 2 views
0

방금 ​​FluentHml을 발견하기 시작했고 CheckBoxList Helper가 붙어 있습니다.MVcContrib.FluentHtml.CheckboxList의 체크 박스 비활성화

여기 그래서, 목록 <ChoiceViewModel>로 입력된다 "criteria.Choices"를 기반으로 checkboxlist이 코드

<ul> 
     <%=this.CheckBoxList(m=>m.Filter) 
       .Options(criteria.Choices, x => x.Code, x => x.DisplayText) 
       .Selected(Model.Filter) 
       .Label(criteria.Label).ItemFormat("<li> {0} </li>") 

     %> 
</ul> 

입니다. 여기

는 ChoiceViewModel

public class ChoiceViewModel 
{ 
    // Some stuff 
    public string Code { get{ return _code; } } 
    public string Label { get { return _label; }} 
    public string DisplayText { get { return _displayText;} 
    } 
} 

의 코드입니다 그리고 내 문제는 : 나는 상태에서 체크 박스를 해제 할 .

, 나는 어떻게 그것을 달성 할 수있는 체크 박스

을 사용하지 않으려의이 코드는 "A"로 시작하지 않는 경우 가정 해 봅시다?

덕분에, 하산

답변

0

CheckboxList은 제공하지 않습니다. CheckBox를 사용하여 루프에서 수행 할 수 있습니다. 다음과 같은 내용 :

<label>criteria.Label</label> 
<%foreach (var choice in criteria.Choices) {%> 
    <li> 
     <%=this.CheckBox(m => m.Filter) 
     .Value(choice.Code) 
     .Checked(choice == Model.Filter) 
     .Label(choice.Code.DisplayText) 
     .Disabled(choice.Code.StartsWith("A")%> 
    </li> 
<%}%>