我使用kendo-grid
创建了一个表格。此表格有两列。其中一列是item
,另一列是value
。
就像
一样+-----------+-----------+
| item | value |
+-----------+-----------+
| Retry | yes |
| interval | 8 |
+-----------+-----------+
如何自定义编辑器(内联)的值为column.if值为[yes],使用下拉列表编辑器,如果值为[8],则使用数字edior。
THX。
答案 0 :(得分:1)
为了您的方便,我准备了一个小例子来演示这样的kendo-grid定制。
以下示例说明如何根据列包含的值自定义列的editor
选项(例如,在您的情况下为“是”):
function DropDownEditor(container, options) {
if(options.model.itemvalue =="yes"){
var input = $('<input required name="' + options.field + '"/>')
input.appendTo(container);
input.kendoDropDownList({
dataSource: {
data: ["yes", "no"]
}
});
}
else{
var input = $('<input type="text" class="k-input k-textbox" name="itemvalue" data-bind="value:itemvalue">');
input.appendTo(container);
}
};
您的网格配置可能如下所示:
var grid = $("#grid").kendoGrid({
dataSource: {
data:[{"item":"Retry", "itemvalue":"yes"},{"item":"interval", "itemvalue": 8}]
},
height: 500,
columns: [
{ field: "item", width: "200px"},
{ field: "itemvalue", editor: DropDownEditor }],
editable: "incell"
}).data("kendoGrid");
在上面的示例中,具有编辑器的列使用DropDownEditor函数根据“itemvalue”列中的值创建编辑器。
希望这有帮助。