哦,小伙子,这次我得到了什么。必须让一些KendoUI级联dropdrown列表正常工作,但我想我现在将从两个开始。基本上我需要检索用户为视图中的第一个列表选择的任何内容,然后将其发送回控制器,然后将其传递给Entity Framework方法(我已经设置了)。这就是我现在拥有的。然后,控制器根据所选的第一个下拉分区值传回适当的第二个下拉列表。我已尝试在参数映射中使用Kendo stringify(数据)技巧以及使用cascadeFrom:“division”,如kendoui文档中所建议的那样但到目前为止还没有工作。因此,引导我到目前为止这个有趣的创作。
非常感谢任何帮助或加菲猫漫画。
下拉列表的JS;
var divisions = $("#division").kendoDropDownList({
optionLabel: "Select category...",
dataTextField: "CodeAndDescription",
dataValueField: "Code",
dataSource: {
// type: "odata",
serverFiltering: true,
transport: {
read: {
url: VIPApiUrl + "GetDivision",
dataType: "json",
async: false,
type: "POST",
}, parameterMap: function (options, type) {
// edit VARS passed to service here!
if (type === 'read') {
return {
'division': options.division,
// 'criteria[0].Value': options.value
// ...
};
}
}
}
},
change: function () {
var value = this.value();
alert(value);
if (value) {
itemGroupDataSource.one("change", function () {
itemGroup.current(null);
}).filter({
field: "ID",
operator: "eq",
value: parseInt(value)
});
itemGroup.enable();
} else {
itemGroup.enable(false);
}
itemGroup.select(0);
}
}).data("kendoDropDownList");
var itemGroupDataSource = new kendo.data.DataSource({
//type: "odata",
serverFiltering: true,
transport: {
read: {
url: VIPApiUrl + "GetItemGroup",
dataType: "json",
async: false,
type: "POST",
}
}
});I
我需要访问json的控制器:
#region GetItemGroup
[HttpPost]
public List<ItemGroupsDTO> GetItemGroup(JObject jsonData)
{
dynamic json = jsonData;
string x = null; //intentionally pass null values
string division = json.division;
List<ItemGroupsDTO> ItemGroups = new List<ItemGroupsDTO>();
var ItemGroupEOList = new VIPItemGroupBOList();
ItemGroupEOList.Load(x, x, division, x, x, x, x, x, x, x, false);
foreach (var d in ItemGroupEOList)
{
var ItemGroup = new ItemGroupsDTO();
ItemGroup.Code = d.Code;
ItemGroups.Add(ItemGroup);
}
return ItemGroups;
}
#endregion
答案 0 :(得分:0)
好的,我通过将itemGroupDataSource中的参数map更改为:
来解决此问题parameterMap: function (options, operation) {
return {
division: options.filter.filters[0].value
}
}
并将值字段更改为:
dataValueField: "CodeAndDescription",
所以我猜我部分没有向EO提供正确的信息,但希望这可以帮助一个Jam的人。