我认为 Anytime datetimepicker 小部件是猫的喵喵声(或劳斯莱斯的咆哮(为什么随时 jQuery 插件的关键元素与背景融为一体/不可见?)),
我以这种方式实现它:
HTML
<label for="BeginDateTime" class="staticLabel">Begin Date Range</label>
<input id="BeginDateTime" name="BeginDateTime" required="true" />
jQuery
AnyTime.picker("BeginDateTime");
var d8 = new Date();
d8.setHours(0);
d8.setMinutes(0);
d8.setSeconds(0);
$('#BeginDateTime').val(d8);
...但是,虽然首先将时间设置为 zilch/midnight 工作(有点):
(实际上,我只想要日期和时间,而不是 GMT 爵士等)
...当我混合输入元素以调用/下拉 AnyTime 小部件时,它忘记了它已设置为 zilch,并使用当前时间覆盖 [rid,writ]es:
如何让 AnyTime 小部件在下拉时保留我分配的值(当然,直到用户明确更改它时)?
更新
我也试过这个:
$( "#BeginDateTime" ).click(function() {
var d = new Date();
d.setHours(0);
d.setMinutes(0);
d.setSeconds(0);
$('#BeginDateTime').val(d);
});
...但唯一的区别是在我单击它之前,输入元素中不会出现 val - 它仍然显示 zilch,但会降低当前时间...
更新 2
我也试过这个:
AnyTime.picker("BeginDateTime",
{ labelHour: "00",
labelMinute: "00",
labelSecond: "00"
});
...但它似乎什么也没做。
更新 3
AMA 的回答很有魅力。这段代码:
AnyTime.picker("BeginDateTime");
// Set the initial time to midnight
var convFrom = new AnyTime.Converter();
var d8From = new Date();
d8From.setHours(0);
d8From.setMinutes(0);
d8From.setSeconds(0);
$('#BeginDateTime').val(convFrom.format(d8From));
AnyTime.picker("EndDateTime");
// Set the initial time to the second before midnight
var convTo = new AnyTime.Converter();
var d8To = new Date();
d8To.setHours(23);
d8To.setMinutes(59);
d8To.setSeconds(59);
$('#EndDateTime').val(convTo.format(d8To));
...导致: