Kendo网格单元格作为常规文本框而不是kendoNumericTextboxes

时间:2016-08-19 23:48:41

标签: c# kendo-ui kendo-grid kendo-asp.net-mvc

我正在尝试填充可编辑的kendo网格。在所有示例中,我看到例如http://demos.telerik.com/aspnet-mvc/grid/editing-inline,内联编辑器单元格似乎通常显示为kendoNumericTextBox。

我正在寻找,例如在此示例(已批准答案)Kendo UI Grid Conditional editing中,按以下方式访问它:

e.container.find("input[name=DiscountPercentageMRC]").data("kendoNumericTextBox")

除了这个jsFiddle,我无法以这种方式访问​​数字文本框。问题出在哪里?

1 个答案:

答案 0 :(得分:1)

根据问题的两个版本判断,我假设您在问为什么有时编辑文本框是Kendo UI文本框(例如NumericTextBox或Kendo-UI样式的输入),有时候是纯文本输入。

使用Kendo UI MVC Grid包装器时,编辑器小部件取决于以下内容:

  • 特定数据字段类型的默认ASP.NET MVC编辑器。
  • 放置在/EditorTemplates/文件夹中的编辑器模板文件。

您的应用程序中可能没有Kendo UI编辑器模板文件,这就是编辑模式下没有使用Kendo UI小部件的原因。请验证。

内置的Kendo UI编辑器模板可以在ASP.NET MVC"用户界面的wrappers/aspnetmvc/EditorTemplates文件夹中找到。安装。

http://docs.telerik.com/kendo-ui/aspnet-mvc/introduction#distribution-contents

以下是如何使用它们或创建自己的编辑器模板:

http://docs.telerik.com/kendo-ui/aspnet-mvc/helpers/grid/templating/editor-templates

将Kendo UI小部件用作编辑器后,您可以在Grid的edit事件中访问它们,如下所示:

http://docs.telerik.com/kendo-ui/controls/data-management/grid/how-to/Editing/access-editor-control

纯文本框编辑器和Kendo-UI样式普通输入通过相应的字段名称作为标准input元素进行访问。不需要.data('kendoWidgetName')方法:

var productNameTextBox = e.container.find("[name=ProductName]");