加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程开发 > asp.Net > 正文

asp.net-mvc – 如何动态绑定kendo mvc ui dropdownlist

发布时间:2020-12-16 07:18:46 所属栏目:asp.Net 来源:网络整理
导读:我正在使用Kendo UI mvc在asp.net mvc上工作.我有两个剑道下拉列表.一个用于诊所列表,另一个用于选定诊所的患者列表.但是,临床和患者之间没有使用级联下拉列表的直接关系.因为我在dropdownlist更改事件中使用了ajax调用并获取了患者列表.这是我列表诊所的第
我正在使用Kendo UI mvc在asp.net mvc上工作.我有两个剑道下拉列表.一个用于诊所列表,另一个用于选定诊所的患者列表.但是,临床和患者之间没有使用级联下拉列表的直接关系.因为我在dropdownlist更改事件中使用了ajax调用并获取了患者列表.这是我列表诊所的第一个下拉列表

@(
  Html.Kendo().DropDownList()
  .Name("ddlClinics")
  .Events(e=>e.Change("ChangeClinic"))
  .BindTo(new SelectList((List<Account.Entities.Clinic>)ViewBag.lstClinic,"ClinicID","ClinicName")))

这是我的列表患者的第二个下拉列表

@(
 Html.Kendo().DropDownList()
.Name("ddlPatients")
.BindTo(new SelectList((List<Patient>)ViewBag.Patients,"PatId","PatName"))))

我想在第一个下拉列表更改时动态地将患者列表绑定到第二个下拉列表,

function ChangeClinic()
{
$.ajax({
url: '/Messages/GetPatient',type: 'Post',data: { email: '@User.Identity.Name' },cache: false,success: function (result) {
 var ddlPatients = $('#ddlPatients').data('kendoDropDownList');
 var main = [];
 $.each(result,function (k,v) {
 main.push({ "PatId": v.PatId,"PatName": v.PatName });
  });
  ddlPatients.dataTextField = "PatName";
  ddlPatients.dataValueField = "PatId";
  ddlPatients.dataSource.data(main);
  ddlPatients.reload();
 }
 });
}

我能够将列表绑定到下拉列表,但所有项目都显示为“未定义”.所以请指导我.

解决方法

据我所知,诊所和患者之间存在关系,因此您应该能够使用包装中提供的 CascadeFrom(“DropDownList1”).我们以类似的方式使用级联下拉列表来确定学区和学校之间的关系:

@(Html.Kendo().DropDownList()
            .Name("District")
            .HtmlAttributes(new { style = "width:300px;" })
            .BindTo(ViewBag.districts)
            .DataTextField("DistrictName")
            .DataValueField("DistrictID")
            .OptionLabel("Select District")
)
@(Html.Kendo().DropDownList()
            .Name("School")
            .HtmlAttributes(new { style = "width:300px;" })
            .CascadeFrom("District")
            .BindTo(ViewBag.schools)
            .DataTextField("SchoolName")
            .DataValueField("SchoolID")
            .OptionLabel("Select School")
)

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读