[英]Bootstrap Datetimepicker set Time programmatically from Epoch
我有一個簡單的日期時間選擇器:
$('#deadline_picker').datetimepicker();
簡單地說,我可以使用var x= new Date(timestamp)
或var x= (new Date(timestamp)).toUTCString()
生成 utc / 或本地日期字符串。 並將其作為值分配給字段 - $('#deadline_picker').val(x)
但是對於一個 Datetime Picker 對象似乎對程序更改沒有響應(如果 Calendar 選擇了某個日期,它仍然會顯示選擇的相同日期並且它似乎沒有時區意識)。 能夠以編程方式設置完全等效的 Epoch 時間對我來說非常重要。 據說 datetimepicker 有 API 方法,但文檔沒有一個例子。
編輯:我正在使用被引用為當前維護的副本: https : //github.com/Eonasdan/bootstrap-datetimepicker
Edit2:顯然它有不同的方法: http : //www.malot.fr/bootstrap-datetimepicker/但它們似乎都沒有時區支持。
我發現https://github.com/smalot/bootstrap-datetimepicker 上常用的一個不會將 (new Date).toUTCString() 作為參數,並且沒有幫助。 我在我的問題中提到的那個: https : //github.com/Eonasdan/bootstrap-datetimepicker - 似乎也沒有采用 (new Date()) 任何一種字符串,但它需要 moment() 和 moment。 utc() 對象,所以在我的情況下這是有效的。 (截止日期在表行中以視覺方式表示為沒有秒、年或毫秒的時間字符串,以保留數據表空間)。
$td = $(this).closest('tr').children('td');
var timestamp = moment.utc($td.eq(2).attr('value')*1000);
$('#deadline_picker').data("DateTimePicker").setDate(deadline);
這可以通過以下方式逆轉:
$('#deadline_picker').data("DateTimePicker").getDate().unix()
你能試試這個嗎?
var x= (new Date(timestamp)).toUTCString();
$('#deadline_picker').datetimepicker("update", x);
如果這不起作用,請嘗試以下操作:
$('#deadline_picker').data({date: x});
$('#deadline_picker').datetimepicker('update');
$('#deadline_picker').datetimepicker().children('input').val(x);
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.