我使用以下内容:
@(Html.Kendo().DropDownListFor(m => m.AbcID)
.OptionLabel("Select Abc")
.DataTextField("AbcName")
.DataValueField("AbcID")
.AutoBind(true)
.HtmlAttributes(new { style = "width: 300px" })
.Filter(FilterType.Contains)
.DataSource(source =>
{
source.Read(read =>
{
read.Action("AutoCompleteAbcList", "Common").Data("GetSelectedXyz");
});
})
所以基本上发生的事情是下拉列表由AutoCompleteAbcList
ActionMethod返回的Json填充。
我想知道的是,我有另一个返回Json的ActionMethod ddlPQRList
,我想使用两个Jsons填充我的下拉列表。
我尝试了以下内容:
@(Html.Kendo().DropDownListFor(m => m.AbcID)
.OptionLabel("Select Abc")
.DataTextField("AbcName")
.DataValueField("AbcID")
.AutoBind(true)
.HtmlAttributes(new { style = "width: 300px" })
.Filter(FilterType.Contains)
.DataSource(source =>
{
source.Read(read =>
{
read.Action("AutoCompleteAbcList", "Common").Data("GetSelectedXyz");
read.Action("ddlPQRList", "Common").Data("GetSelectedXyz");
});
})
但没有获得所需的输出。我只从第二个ActionMethod获取列表。
感谢任何帮助。感谢。
答案 0 :(得分:0)
不,这不可能像你想要的那样。小部件只能有一个dataSource。
第二个读取Action正在覆盖第一个。这与设置变量值两次相同 - 只有第二个变量值。
如果您希望DropDownList的dataSource是列表的串联,那么您需要创建一个返回该列表的单个控制器操作,即:
read.Action("AutoCompleteAbcListANDddlPQRList", "Common").Data("GetSelectedXyz");
其中AutoCompleteAbcListANDddlPQRList()的实现返回BOTH AutoCompleteAbcList和ddlPQRList列表的单个列表。