剑道网格使用内联编辑和自定义编辑器下拉控件
Kendo Grid using inline editing and custom editor dropdown control
我正在尝试为网格上的列实现自定义编辑器。编辑器使用DropdownList控件。
我能够得到下拉菜单显示在添加/编辑,但做出选择后,张贴json发送包含默认值,而不是被选中的值。
我的实现是下面这是一个摘自Razor页面。
你能帮我找出我在这里做错了什么吗?<div id="divGrid"></div>
<script>
$(document).ready(function () {
var dsGroupForm = new kendo.data.DataSource({
transport: {
read: {
url: '@Url.Action("GroupForm_Read", "Settings")',
dataType: "json"
},
update: {
url: '@Url.Action("GroupForm_Update", "Settings")',
dataType: "json"
},
destroy: {
url: '@Url.Action("GroupForm_Destroy", "Settings")',
dataType: "json"
},
create: {
url: '@Url.Action("GroupForm_Create", "Settings")',
dataType: "json"
}
},
batch: false,
pageSize: 5,
schema: {
data: "Data",
total: "Total",
errors: "Errors",
model: {
id: "GroupFormId",
fields: {
GroupFormId: { editable: false, nullable: false },
AdGroupId: { required: false },
AdGroupDisplayName: { validation: { required: true } },
FormKey: { validation: { required: true } },
Ordinal: { validation: { required: true } },
FormType: { validation: { required: false } },
FormTypeDisplay: { defaultValue: { FormTypeName: "Form1", FormTypeId: "1" } },
FormProjectionId: { validation: { required: false } }
}
}
}
});
$("#divGrid").kendoGrid({
autobind: true,
dataSource: dsGroupForm,
pageable: true,
height: 430,
toolbar: [{ name: "create", text: "Add"}],
columns: [
{field: "AdGroupDisplayName", title: "Group" },
{ field: "FormKey", title: "Key" },
{ field: "Ordinal", title: "Ordinal", format: "{0:d}", width: "100px" },
{ field: "FormTypeDisplay", title: "Type", width: "150px", editor: formTypeDropDownEditor, template: "#=FormTypeDisplay.FormTypeName#" },
{ field: "FormProjectionId", title: "ProjectionId" },
{ command: [{ name: "edit", text: "Edit" }, { name: "destroy", text: "Remove" }], title: " ", width: "172px" }
],
editable: "inline"
});
});
var formTypeData = new kendo.data.DataSource({
data: [
{ FormTypeName: "Form1", FormTypeId: "1" },
{ FormTypeName: "Form2", FormTypeId: "2" },
{ FormTypeName: "Form3", FormTypeId: "3" }
]
});
function formTypeDropDownEditor(container, options) {
$('<input name="FormTypeDisplay" required data-text-field="FormTypeName" data-value-field="FormTypeId" data-bind="value:' + options.field + '"/>')
.appendTo(container)
.kendoDropDownList({
autoBind: true,
dataTextField: "FormTypeName",
dataValueField: "FormTypeId",
dataSource: formTypeData
});
}
</script>
我能够得到它的工作使用MVC包装和以下这篇文章:
http://www.sitereq.com/post/kendo-mvc-dropdown-lists-inside-inline-kendo-mvc-grids关键是由于一个已知的剑道网格错误而添加了保存事件-在我看来剑道文档应该提到这个问题。
我尝试使用javascript实现相同的逻辑,但无法使其工作。
试试这个
function formTypeDropDownEditor(container, options) {
$('<input name="' + options.field + '" required data-text-field="FormTypeName" data-value-field="FormTypeId" data-bind="value:' + options.field + '"/>')
.appendTo(container)
.kendoDropDownList({
autoBind: true,
dataTextField: "FormTypeName",
dataValueField: "FormTypeId",
dataSource: formTypeData
});
}
相关文章:
- 自定义验证器不工作
- Asp自定义验证器在IE-11中不起作用
- 使用javascript&自定义验证器检查开始日期和结束日期
- 对Soundcloud自定义播放器播放列表的顺序进行排序
- 类别自动完成jQuery中的单词级自定义筛选器,而不是子字符串
- Kendo UI网格自定义编辑按钮
- 自定义筛选器不'我不使用django数据表视图创建的ajax.data.Json
- 在模型可用之前调用使用 app.filter 的自定义筛选器
- 自定义验证器未启动
- Kendo Scheduler自定义编辑弹出模板中的附加按钮
- 如何解决jquery自定义定时器问题
- Ext.js 网格中的自定义编辑器
- 剑道网格自定义编辑器下拉列表;t反映选择
- 带有事件MVC3的自定义编辑器模板
- 使用下拉列表编辑器的剑道网格-线编辑(编辑自定义编辑器)
- 自定义编辑器在光滑网格
- KendoUI Grid:自定义编辑表单,日期选择器返回false格式
- 剑道网格使用内联编辑和自定义编辑器下拉控件
- 以编程方式关闭自定义编辑器
- 创建自定义编辑器窗口kendojs网格