我试图使用现有的数据文件来填充一个剑道下拉列表。我对填充下拉列表感兴趣的字段是" make"基本上显示列表或汽车制造商的领域。
这很好......
var makes = $("#makes").kendoDropDownList({
optionLabel: "Select make...",
dataTextField: "make",
dataValueField: "make",
dataSource: {
transport: {
read: {
dataType: "jsonp",
url: "data.php",
}
},
schema: {
data: "data"
}
}
}).data("kendoDropDownList");
然而,有许多品牌重复作为其汽车规格列表,所以我希望能够通过make对数据进行分组来隐藏重复。只要我添加此行,dropdowlist选项就会变为未定义。
group: { field: "make" }
我添加组后的代码
var makes = $("#makes").kendoDropDownList({
optionLabel: "Select make...",
dataTextField: "make",
dataValueField: "make",
dataSource: {
transport: {
read: {
dataType: "jsonp",
url: "data.php",
}
},
schema: {
data: "data"
},
group: { field: "make" }
}
}).data("kendoDropDownList");
任何想法的人
感谢
UPDATE !!
使用下面这个我现在可以对数据进行分组,但级联不起作用
var data = [
{"make": "Audi", "model": "A1"},
{"make": "Audi", "model": "A2"},
{"make": "Audi", "model": "A3"},
{"make": "Audi", "model": "A4"},
{"make": "Saab", "model": "S500"}
];
$(document).ready(function () {
var makesDatasource = new kendo.data.DataSource({
data: data,
group: { field: "make", value: "make"}
});
var makes = $("#makes").kendoDropDownList({
optionLabel: "Select make...",
dataTextField: "value",
dataValueField: "value",
dataSource: makesDatasource
}).data("kendoDropDownList");
var modelsDatasource = new kendo.data.DataSource({
data: data,
group: { field: "model", value: "model"}
});
var models = $("#models").kendoDropDownList({
autoBind: false,
cascadeFrom: "makes",
optionLabel: "Select model...",
dataTextField: "value",
dataValueField: "value",
dataSource: modelsDatasource
}).data("kendoDropDownList");
});
答案 0 :(得分:0)
分组数据如下:
[
{ field: "make", value: "Make 1", items: [...]},
...
]
所以请尝试改为:
dataTextField: "value",
dataValueField: "value",