1

我有一个日期时间选择器和一个按钮。用户选择日期时间,然后点击按钮。选定的日期时间显示在警报中。

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 中选择,有没有办法检索更新的日期时间(在文本中)?

我的测试显示默认是检索选择器中的选定内容,而不是文本框中的更新文本。

4

2 回答 2

2

我有一个类似的问题,我发现使用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 初始化的时间。

于 2018-08-15T21:18:19.530 回答
0

这有帮助吗?为您的输入设置一个 id 以检索数据。

https://jsfiddle.net/djibe89/kx1rnbm9/

$(function() {
  $('#datetimepicker1').datetimepicker();

  $('#buttonGo').click(function() {
      var time = $("#input-datetimepicker").val();
      alert(time);
  })
});
于 2018-07-12T20:34:04.350 回答