我正在尝试填充可编辑的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,我无法以这种方式访问数字文本框。问题出在哪里?
答案 0 :(得分:1)
根据问题的两个版本判断,我假设您在问为什么有时编辑文本框是Kendo UI文本框(例如NumericTextBox或Kendo-UI样式的输入),有时候是纯文本输入。
使用Kendo UI MVC Grid包装器时,编辑器小部件取决于以下内容:
/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]");