我正在使用Eonasdan的datetimepicker,到目前为止工作正常。
我有一个像这样的HTML元素
<div id="datetimepicker"></div>
并使用datetimepicker函数,如下所示:
$("#datetimepicker").datetimepicker({
inline: true,
sideBySide: true,
stepping: 5,
locale: "de"
});
我想使用date功能通过Javascript更新日期。我的尝试看起来像这样:
$("#datetimepicker").data("DateTimePicker").date("2016-01-01");
不幸的是,这只返回一个大对象,并且不会以任何方式改变可见日期。返回此对象
Object { destroy: c/l.destroy(), toggle: c/ha(), show: c/ga(), hide: c/ba(),
disable: c/l.disable(), enable: c/l.enable(), ignoreReadonly: c/l.ignoreReadonly(),
options: c/l.options(), date: c/l.date(), format: c/l.format(), 40 weitere… }
使用不同的时间格式或只使用日期,没有时间或任何时间都无济于事。
我在各种网站上找到的建议解决方案都没有解决我的问题。我不知道是否需要更新元素?如果是这样,我该怎么办?我在文档中找不到任何提示......
使用defaultDate不是一个选项,因为我需要在两个不同的日期执行此过程两次。
答案 0 :(得分:5)
根据documentation您可以使用string, Date, moment, null
,字符串和日期示例如下。注意默认选择器格式。
$('#datetimepicker1').data("DateTimePicker").date(new Date())
或
$('#datetimepicker1').data("DateTimePicker").date('1/11/2016 12:23:12')
答案 1 :(得分:1)
当然,我是真正的死灵法师,但是我遇到了同样的问题,.date()函数对我没有帮助。 但是,我发现了这一点:
$('#datetimepicker1').data("DateTimePicker").options({ defaultDate: newdate});
// newdate - could be Date, Moment or ISO string
答案 2 :(得分:1)
我已经调试了一点,我找到了这个解决方案,它对我有用。
$('#datetimepicker').data("DateTimePicker").setValue('2020-05-3')
通过使此$('#datetimepicker').data("DateTimePicker")
安慰,您将获得datepicker的所有功能。
答案 3 :(得分:0)
我认为您的HTML元素应为Input标签:
<input id="datetimepicker" type="text">
准备好文档后:
$(document).ready(function () {
$('#datetimepicker').datetimepicker({
defaultDate: null,
format: 'LT'
});
})
您可以通过JavaScript设置日期值。
$('#datetimepicker').data("DateTimePicker").date(new Date())
或设置为空值,显示空值。
$('#datetimepicker').data("DateTimePicker").date(null)
我测试了它。它正在工作。
答案 4 :(得分:0)
确定正在尝试$('#datetimepicker')。data(“ DateTimePicker”)。date(null)的用户 并出现错误。数据未定义。然后您可以使用下面的jugaad,我不知道它有多好,但是对我来说确实有用
function getDateTimeObj(ele) {
if(ele && ele[0]){
for(k in ele[0]){
if(ele[0][k].hasOwnProperty('DateTimePicker')){
return ele[0][k]['DateTimePicker'];
}
}
}
}
用法:
getDateTimeObj($('#datetimepicker')).date(null);