我在我的应用程序中使用 Kendo DateTimePicker。
我在应用程序中从中获得的价值是
Wed Aug 13 2014 00:00:00 GMT+0200 (Romance Daylight Time)
我无法将其解析为日期时间。我收到“字符串未被识别为有效的日期时间”。错误。
如何设置从 DateTimePicker 获取的日期的格式? Kendo DateTimePicker 中有一个选项吗?t
如果您需要更改从申请中获得的日期,您可以执行以下操作
var dateobj=kendo.parseDate("Wed Aug 13 2014 00:00:00 GMT+0200 (Romance Daylight Time)", "yyyy-MM-dd h:mm:ss tt");
var datestring = kendo.toString(dateobj, "MM-dd-yyyy h:mm:ss tt");
kendo.parseDate()
会将日期解析为日期对象,kendo.toString()
会将日期格式化为字符串
如果您需要转换从日期选择器获得的日期,请执行此操作
var datepicker = $("#datepicker").data("kendoDatePicker");
var value = datepicker.value();
kendo.toString(value,"dd/MM/YYYY")
如果您需要将日期选择器日期转换为服务器日期
var datepicker = $("#datepicker").data("kendoDatePicker");
var value = datepicker.value();
value.toUTCString();
这是我用过的:
var dateobj = kendo.parseDate("Wed Aug 13 2014 00:00:00 GMT+0200 (Romance Daylight Time)");
var datestring = kendo.toString(dateobj, "MM-dd-yyyy h:mm:ss tt");
我创建了一个自定义活页夹,用它来代替“VALUE”数据绑定属性
kendo.data.binders.widget.shortdate = kendo.data.Binder.extend({
init: function (widget, bindings, options) {
kendo.data.Binder.fn.init.call(this, widget.element[0], bindings, options);
var that = this;
$(widget.element).on("change", function () {
that.change();
});
},
refresh: function () {
var path = this.bindings.shortdate.path,
source = this.bindings.shortdate.source,
value = source.get(path);
this.bindings["shortdate"].set(value);
},
change: function () {
var formatedValue = this.element.value,
value = kendo.toString(new Date(formatedValue), "d");
if (value) {
this.bindings["shortdate"].set(value);
}
}
});
你也可以试试这个
entity.ExpiredDate = ParseDate(model.ExpiredDate);
private static DateTime ParseDate(string input)
{
return DateTime.ParseExact(input, formats, CultureInfo.InvariantCulture, DateTimeStyles.None);
}
private static string[] formats = new string[]
{
"MM/dd/yyyy HH:mm:ss tt",
"MM/dd/yyyy HH:mm:ss",
"M/dd/yyyy H:mm:ss tt",
"M/dd/yyyy H:mm:ss" ,
"MM/dd/yyyy hh:mm tt"
};
如果您使用kendo API绑定网格,则可以使用.Format(“0:d”)。 您可以在以下链接中找到标准和自定义格式的含义 - 日期格式
这是一个使用自定义格式的示例
columns.Bound(model => model.CreatedOn).Format("{0:dd.MM.yyyy - HH:mm:ss}");
结果是 24 小时格式:
20.07.2016 - 11:01:23
。
这是一个不同的答案,使用 Se SendKeys() 方法。
观察手动输入日期的工作方式,得出此解决方案:
研究如何访问日期选择器图标。 这很棘手,但当弄清楚后,会将其发布在这里和另一个链接中:
只需修改其他日期格式即可。请注意,小写的 m、mm 等是 Kendo 日期选择器的分钟。月份必须大写 MM、MMM。
输入 2 位数日期后,选择器会跳至月份部分。 可以发送月份的字符,或者可以使用 1-12 月的字符。 MMM 自动将 1-12 转换为 3 个字符的月份值。
只需设置 Se 测试即可找出其他问题。
“我会回来...”使用日期选择器图标解决方案。