드롭다운 박스 연동을 구현한 MVC의 예시에 대한 자세한 설명

零下一度
풀어 주다: 2017-07-02 10:32:44
원래의
2420명이 탐색했습니다.

이 글에서는 드롭다운 상자의 연결 효과를 구체적으로 구현하기 위해 MVC를 주로 소개합니다. 관심 있는 친구들은 참고할 수 있습니다.

부서 위치의 연결 효과를 예로 들어보겠습니다. 부서를 선택하는 경우, 부서의 직위와 관련되어 있으므로 드롭다운 상자 작성 방법에 대해서는 자세히 설명하지 않겠습니다.

View: 그 중 dept는

부서

속성이고, deptlist는 부서 드롭다운 상자의 속성입니다. Job은 직위 드롭다운 상자의 속성입니다. 드롭다운 상자 바인딩에 대한 이전 기사

부서가 변경되면 그에 따라 위치도 변경됩니다.

//根据城市获取酒店
 $("#dept").change(function () {
  var url = rootUrl + "aaa/GetJobByDept";
   var dept = $(this).val(); //获取部门的值
   var job = $("#job");
   job.empty();  //清空当前职位的值
   //这句很重要,因我们用的是select2插件,若没有用这个插件可以去掉这句
   job.select2('val', '');
   $.ajax({
    cache: false,
    type: "GET",
    url: url,
    data: { "Dept": dept},
    success: function (data) {
     $.each(data, function (id, option) {

      job.append($(&#39;<option></option>&#39;).val(option.Id).html(option.Name));
     });
     job.trigger(&#39;change&#39;);
    },
    error: function (xhr, ajaxOptions, thrownError) {
     toastr["error"]("请选择部门");
    }
   });
 });
로그인 후 복사

js에서 URL을 실행하면 이 프로그램은

Controller

에 작성됩니다.

  [Description("根据部门获取职位")]
  [AcceptVerbs(HttpVerbs.Get)]
  [LoginAllowView]
  public ActionResult GetJobByDept(string dept)
  {
   if (String.IsNullOrEmpty(dept))
   {
    throw new ArgumentNullException("dept");
   }
   StringBuilder sb = new StringBuilder();
   sb = new StringBuilder();
   sb.Append(" SELECT jobid,jobname ");
   sb.Append(" FROM job_file ");
   sb.Append(" LEFT JOIN dept_file ON jobdept = deptid ");
   sb.AppendFormat(" WHERE deptid=&#39;{0}&#39;", dept);
   DataTable dt = sqlHelper.getData(sb.ToString());
   var result = dt.AsEnumerable().Select(row => new Item
   {
    Name = Utils.ObjToStr(row["jobname"]),
    Id = Utils.ObjToInt(row["jobid"], 0)
   }).ToList();
   return Json(result, JsonRequestBehavior.AllowGet);
  }
로그인 후 복사

위 내용은 드롭다운 박스 연동을 구현한 MVC의 예시에 대한 자세한 설명의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

관련 라벨:
원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿