我有两个Kendo
DropDownList
输入。当您选择第一个DropDownList
时,它将发送request
,并在获取response
之后,将使用此数据激活第二个DropDownList
。即使我在第二个data
上也可以显示超过1个DropDownList
..但它仅显示一个。
如果我不使用cascading
,则可以显示datas
上的所有DropDownList
。所以我不知道是什么原因。
这是我的第一个DropDownList
@(Html.Kendo().DropDownList()
.Name("firsItemId")
.OptionLabel("Seçiniz")
.DataTextField("Name")
.DataValueField("Id")
.DataSource(dataSource =>
{
dataSource
.Ajax()
.Read(read => read.Action("GetAllDataForDropDown", "SomeContr"));
}))
这是我的第二个DropDownList
@(Html.Kendo().DropDownList()
.Name("konuId")
.OptionLabel("Seçiniz...")
.DataTextField("Baslik")
.DataValueField("Id")
.DataSource(source =>
{
data.Ajax()
.Read(read =>
read.Action("GetSomeDataById","Konu").Data("filterKonus"));
data.ServerFiltering(false);
}
)
.Enable(false)
.AutoBind(false)
.CascadeFrom("firsItemId")
)
有script
个级联
<script>
function filterKonus() {
return {
firsItemId: $("#firsItemId").val()
};
}
</script>
响应:
RESPONSE : {"Data":[{"Id":3,"Baslik":"Baslik1"},{"Id":1,"Baslik":"Baslik2"},{"Id":4,"Baslik":"Baslik3"}],"Total":3,"AggregateResults":null,"Errors":null}
这里也有一个奇怪的问题。
当我选择第一个DropDownList
(第一个id为1且位置为1)的第一个项目时。它在response
上获得“ Id”:1 ,并在第二个data
上显示此{"Id":1,"Baslik":"Baslik2"}
DropDownList
,而不是在上显示第一个>响应。它会根据我不知道的第一个data
或DropDownList
所选择的ItemId
来获取并填充响应中的Position
。