у меня 2 взгляда...
Один для числового текстового поля:
@Html.TextBoxFor(m => m, new {
@class = "k-input",
data_bind = "value: " + ViewData.TemplateInfo.HtmlFieldPrefix,
data_role = "numerictextbox",
data_format = @"\#",
data_decimals = "0"
})
@Html.ValidationMessageFor(m => m)
И один для средства выбора даты:
@Html.TextBoxFor(m => m, new
{
@class = "k-input",
data_bind = "value: " + ViewData.TemplateInfo.HtmlFieldPrefix,
data_role = "datepicker",
data_format = "dd MMM yyyy",
type = "date"
})
@Html.ValidationMessageFor(m => m)
Почему числовое поле работает, а средство выбора даты не работает?
Некоторая дополнительная информация:
Я использую Knockout Kendo для привязки модели MVVM к визуализируемому полю. поэтому на стороне клиента я получаю элемент контейнера, который содержит оба этих типа полей.
Данные поступают из конечной точки OData, поэтому даты представлены в стандартном формате ISO.
JavaScript для поддержки этого...
$(function () {
var model = new kendo.observable({
data: null,
fetch: function (callback) {
$.get("...", function (res) {
res.date = kendo.parseDate(res.date);
result.data = res;
if (typeof callback != 'undefined') { callback(); }
});
}
});
model.fetch(function () {
var component = $("#...");
kendo.bind(component, model.data);
});
});
Нужно ли как-то относиться к средствам выбора даты иначе, чем к числовым полям? Мой результат - стандартное поле даты html, к которому хром прикрепляет свой базовый инструмент выбора даты, и числовое текстовое поле со стрелками кендо вверх вниз.
Я ожидаю, что после этого оба поля станут стандартными для кендо (если я что-то не пропустил).