Как получить числовое текстовое поле для редактирования ячейки в сетке интерфейса Kendo?
Глядя на демонстрации сетки Kendo UI (разновидность ASP.NET MVC CSHTML), при редактировании ячейки, связанной с числовым значением, ввод становится numerictextbox
, но я не могу воспроизвести это поведение (на моей стороне остается простой input
). Там должно быть что-то, что назначает это data-role
атрибут или что-то, но что это?
Спасибо,
3 ответа
Чтобы использовать привязку модели и чтобы Kendo автоматически назначил соответствующий элемент управления, необходимо настроить шаблон редактора MVC ( http://coding-in.net/asp-net-mvc-3-how-to-use-editortemplates/), то есть Views/Shared/EditorTemplates. например, для рендеринга Kendo NumericTextBox, создайте шаблон редактора по следующим направлениям:
@model int
@(Html.Kendo().NumericTextBox())
Определите тип поля как числовой в схеме.
Пример: проверка UnitPrice
или же UnitsInStock
schema: {
model: {
id: "ProductID",
fields: {
ProductID: { editable: false, nullable: true },
ProductName: { validation: { required: true } },
UnitPrice: { type: "number", validation: { required: true, min: 1} },
Discontinued: { type: "boolean" },
UnitsInStock: { type: "number", validation: { min: 0, required: true } }
}
}
}
Kendo предоставляет некоторые шаблоны в разделе shared/EditorTemplates => здесь есть шаблон Integer.cshtml. мы можем использовать это, чтобы показать числовое значение в столбце. Нам нужно установить свойство EditorTemplateName для столбца таблицы.
EditorTemplateName ("Integer") для column.Bound для этого столбца.