질문을 올바르게 이해했다면, 계단식 드롭 다운을 시도하고 있습니다. 그리고 저장 프로 시저를 사용하여 드롭 다운을 바인딩하고 있습니다. 좋아요 ??
다음은 예입니다. 두 개의 드롭 다운이 있습니다. 학교 및 코스. 학교에서 선택한 값을 변경하면 코스 드롭 다운의 값이 변경됩니다.
이 컨트롤러 :
public ActionResult SchoolList(int id)
{
IEnumerable<SelectListItem> schools = new Util().GetSchoolSelectList(id);
if (HttpContext.Request.IsAjaxRequest())
return Json(schools, JsonRequestBehavior.AllowGet);
return View(schools);
}
public ActionResult CourseList(int id)
{
IEnumerable<SelectListItem> courses = new Util().GetCourseSelectList(id);
if (HttpContext.Request.IsAjaxRequest())
return Json(courses, JsonRequestBehavior.AllowGet);
return View(courses);
}
그리고 이것은 JQuery와 있습니다 :
$("#Schools").change(function() {
$.getJSON("/Account/CourseList/" + $("#Schools").val(), function (data) {
var items = "<option>Select your Course</option>";
$.each(data, function (i, course) {
items += "<option value='" + course.Value + "'>" + course.Text + "</option>";
});
$("#Courses").html(items);
});
});
그리고 이것은 HTML입니다 :
<select id="Schools" name="UserSchool"></select>
<select id="Courses" name="UserCourse"></select>