У меня есть 2 выпадающих списка в View, но я не знаю, как получить ID для работы скрипта, пожалуйста, помогите мне.спасибо заранее
это мой контроллер для IndexList для создания списка
public ActionResult IndexList() {
ViewBag.falcuty_id = new SelectList(db.faculties, "faculty_id",
"faculty_name");
ViewBag.linktoYearId = GetYears();
return View();
}
это мой контроллер выпадающего списка для создания контроллера для выбора года
private SelectList GetYears() {
int CurrentYear = DateTime.Now.Year;
for (int i = 2017; i <= CurrentYear; i++) {
ddlYears.Add(new SelectListItem {
Text = i.ToString(),
Value = i.ToString()
});
}
return new SelectList(ddlYears, "Value", "Text");
}
Это метод должен передавать параметр.Этот метод будет запрашивать и подсчитывать количество контента по идентификатору факультета и дате_поста
public ActionResult List(int date,string date) {
int count = (db.contents.Where(x => x.date_post.Value.Year == date && x.faculty_id == "IT")).Count();
Session["count"] = count;
return RedirectToAction("IndexList", "contents");
}
и моему просмотру в индексе.Скрипт не работает
@using (Html.BeginForm())
{
<div class="row" style="border:solid; border-width:thin; padding:20px; height:400px;">
<div class="col-lg-12 text-center">
<div class="row">
@Html.DropDownList("falcuty_id", null, new { @onChange = "selectFaculty(this)" })
<div class="col-lg-6" align="left">
@Html.DropDownList("linktoYearId", null, "---Select year---",new {
@id = "ddlYears",
@onChange = "SelectedValue(this)",
@class = "form-control",
@style = "width:200px"
})
<h1>@Session["count"]</h1>
</div>
</div>
</div>
</div>
}
<script>
function SelectedValue(ddlObject) {
var selectedValue = ddlObject.value;
}
function selectFaculty(falObject1) {
var selectedValue = falObject1.value;
window.location.href = '@Url.Action("List","contents")?date=' + parseInt(selectedValue.ddlObject.value) + '?faculty=' + falObject1.value;
}
</script>