我有一个datetimepicker和一个按钮。 用户选择一个日期时间,然后单击按钮。 所选日期时间显示在警报中。
https://jsfiddle.net/jeffxiao/rfzm8pyt/
$(function() {
$('#datetimepicker1').datetimepicker();
$('#buttonGo').click(function() {
var moment = $("#datetimepicker1").datetimepicker("date");
alert(moment.format('MMMM Do YYYY, h:mm:ss a'));
})
});
问题是,如果用户更改输入的文本,而不是从datetimepicker中进行选择,是否有办法检索更新的日期时间(在文本中)?
我的测试显示默认值为检索选择器中的选定内容,而不是文本框中的更新文本。
答案 0 :(得分:0)
有帮助吗? 在输入中设置一个ID以检索数据。
https://jsfiddle.net/djibe89/kx1rnbm9/
$(function() {
$('#datetimepicker1').datetimepicker();
$('#buttonGo').click(function() {
var time = $("#input-datetimepicker").val();
alert(time);
})
});
答案 1 :(得分:0)
我有一个类似的问题,我发现使用viewDate
而不是date
解决了该问题。因此您的示例代码将更新为
$(function() {
$('#datetimepicker1').datetimepicker();
$('#buttonGo').click(function() {
var moment = $("#datetimepicker1").datetimepicker("viewDate");
alert(moment.format('MMMM Do YYYY, h:mm:ss a'));
})
});
编辑:在进一步调查中,我发现上述内容似乎仅在未设置useCurrent: false
的情况下有效。如果设置了useCurrent: false
,则出现viewDate返回初始化datetimepicker的时间。