Так что я не уверен, как выглядит собственность больницы, но я сделаю предположение, что у каждого есть уникальный идентификатор.Кроме того, чтобы связать опубликованные данные с моделью представления, вам необходимо использовать формы в своем представлении.Для создания выпадающего списка используйте DropDownListFor
-Helper.Таким образом, данные будут привязаны к вашей модели после отправки формы.
Таким образом, ваше представление может выглядеть примерно так
@model testContingency.Models.ListByWardDD
@{
ViewBag.Title = "TestDropDowns";
}
<h2>TestDropDowns</h2>
<div>
@using (Html.BeginForm("TestDropDowns", "YourController", FormMethod.Post))
{
@Html.DropDownListFor(x => x.HospitalID, Model.Hospital)
@Html.DropDownListFor(x => x.WardID, Model.Wards)
<input type="submit" value="send" />
}
</div>
Ваша ViewModel testContigency.Models.ListByWardDD
должна иметь как минимум следующееproperties
public class ListByWardDD {
public int HostpitalID { get;set; }
// the value of the SelectListItem-objects should be the hospital ID
public IEnumerable<SelectListItem> Hospital { get;set; }
public int WardID { get;set; }
// the value of the SelectListItem-objects should be the ward ID
public IEnumerable<SelectListItem> Wards { get;set; }
}
После того, как вы отправите форму (для простоты я добавил кнопку для отправки формы и оставил часть javascript вне поля) метод TestDropDowns вашего контроллера (который необходимо заполнить в BeginForm-Helper) будет называться.Этот метод ожидает, что объект типа ListByWardDD ожидает в качестве параметра, и среда автоматически заполнит значения для вас.
[HttpPost]
public ActionResult TestDropDowns(ListByWardDD viewModel) {
// your code here, viewModel.HospitalID should contain the selected value
}
Примечание. После отправки формы свойства Hospital
и Wards
будут пустыми.,Если вам нужно снова отобразить форму, вам необходимо заново заполнить эти свойства.В противном случае ваши выпадающие списки пусты.
Я изо всех сил старался опубликовать действительный код, но не компилировал и не тестировал его.