如何使用远程数据将选择下拉列入我的一个Kendo ui网格列?
关于这个主题的文件非常有限,特别是我的要求是:
要从我的PHP / MySQL脚本中获取选项列表,请填充下拉菜单。
如果已根据数据库中的查询设置了其中一个选项,则已在菜单中选择该选项。
根据提供的答案,我现在有以下内容,但它不起作用。我得到一个下拉列表,其中包含所有“未定义”的选项:
function categoryDropDownEditor(container, options) {
$('<input required data-text-field="'+options.field+'" data-value-field="'+options.field+'" data-bind="value:' + options.field + '"/>')
.appendTo(container)
.kendoDropDownList({
autoBind: false,
dataTextField: "text",
dataValueField: "value",
dataSource: {
type: "POST",
transport: {
read: ROOT+"user/branch-list"
}
},
index: 0
});
}
我的PHP脚本只返回JSON,如下所示:
[{text: "Germany", value: "1"}]
答案 0 :(得分:1)
定义该字段的列时,您可以使用editor
。
{ field: "color", title: "Color", editor: editColor }
其中editColor
是一个定义为的函数:
var data = [
{ text: "Black", value: "1" },
{ text: "Orange", value: "2" },
{ text: "Grey", value: "3" }
];
function editColor(container, options) {
$('<input data-bind="value:' + options.field + '" '"/>')
.appendTo(container)
.kendoDropDownList({
dataTextField: "text",
dataValueField: "value",
dataSource: data,
index: 0,
});
}
您可以在kendoDropDownList
中设置您需要的configuration option。
答案 1 :(得分:0)
另外,您可能需要检查数据源是否正确解析数据。
例如,我的json看起来像你可以看到实际记录包含在_ ENTITIES数组中。因此,为了使数据源正确解析,我必须在我的数据源的模式中指定数据:“ _ENTITIES”。我希望这有帮助
架构:{ model:myModel, 数据:“__ ENTITIES” }
{ “_ entityModel”: “联系人”, “ _COUNT”:13, “_ SENT”:13, “ _First”:0,“_ 实体 “:[{” _key “:” 177" , “_ STAMP”:16, “ID”:177, “名字”: “”, “中间名”: “”,“姓氏“:””, “ContactType”:{ “ _key”: “2”, “_ STAMP”:4, “ID”:2 “名称为”: “主页”, “contactCollection”: { “ _deferred”:{ “URI”: “/休息/ ContactType(2)/ contactCollection $扩大= contactCollection”}}}, “addressCollection”:{ “__推迟”:{ “URI”:“/休息/联系人(177)/ addressCollection?$扩大= addressCollection“}}},
{ “_ KEY”: “180”, “ _STAMP”:5 “ID” 180, “名字”: “一”, “中间名”: “B”,“姓氏“:” C”, “ContactType”:{ “_ KEY”: “2”, “ _STAMP”:4, “ID”:2 “名称为”: “主页”, “contactCollection” :{ “_ 推迟”:{ “URI”: “/休息/ ContactType(2)/ contactCollection $扩大= contactCollection”}}}, “addressCollection”:{ “ _deferred”:{” URI “:”/休息/联系(180)/ addressCollection $扩大= addressCollection“}}}