私は ASP.Net MVC 3 Web アプリケーションを開発しています。最近、チェックボックス リストを表示する方法について質問を投稿しました。
ASP.Net MVC 3チェックボックスリストの値を取得する
RubbleFord と Darin Dimitrov の助けのおかげで、これを機能させることができました。
これは 1 つのチェックボックス リストではうまく機能しますが、同じビューに複数のチェックボックス リストを表示できるようにする必要があります。つまり、添付の画像を参照してください。
現在、1 つのリストを表示するために使用している ViewModel は次のとおりです。
public class ViewModelShiftSubSpecialties
{
public ListItem specialtyName { get; set; }
public IEnumerable<ViewModelCheckBox> SubSpecialityList { get; set; }
}
public class ViewModelCheckBox
{
public string Id { get; set; }
public string Name { get; set; }
public bool Checked { get; set; }
}
そして、コントローラー内で、ViewModelShiftSubSpecialties を次のように入力します。
var subSpecialties = GetSubSpecialtiesForSpecialty(5);
ViewModelShiftSubSpecialties viewModel = new ViewModelShiftSubSpecialties();
var checkBoxList = new List<ViewModelCheckBox>();
viewModel.specialtyName = _listService.GetListItemByID(5); //Medicine Specialty
foreach (var item in subSpecialties)
{
ViewModelCheckBox chkBox = new ViewModelCheckBox { Id = item.subID.ToString(), Name = item.ListSub.description, Checked = false };
checkBoxList.Add(chkBox);
}
viewModel.SubSpecialityList = checkBoxList;
私のビューでは、リスト名を表示し、エディター テンプレートを使用してチェックボックス リストを表示します。
<h3>@Model.specialtyName.description</h3>
@Html.EditorFor(m => m.SubSpecialityList)
ただし、上記のコードを1つのビューで複数のチェックボックスリストを操作する方法として、私は完全に困惑しています。これは可能ですか?
誰かがこれで私を助けてくれれば、本当に感謝しています。
ありがとう。