如何从Bootstrap datetimepicker获取原始日期数据

时间:2015-02-23 05:58:22

标签: javascript jquery twitter-bootstrap date bootstrap-datetimepicker

Control是我定义的输入字段。每当我点击控件时,它都会打开datetimepicker并将我选择的任何日期追加到控件上,例如11/30/2015(显示值)

的Javascript

control.datetimepicker({
    pickTime:false,
    language: en
});

有没有办法可以获得原始日期(如果我错了,请纠正我):

Wed Feb 06 2013 00:00:00 GMT+0800 (Malay Peninsula Standard Time)

由于不同的语言会有不同的显示日期值,如果我能够获得原始日期来处理我的服务器,那将会很棒。

2 个答案:

答案 0 :(得分:1)

我在这里找到了答案: Bootstrap 3 datetimepicker events not firing up

我使用的版本是:http://eonasdan.github.io/bootstrap-datetimepicker/

因此,为了获得日期obj的东西,我可以使用它:

control.datetimepicker({
     pickTime: false,
     language: en
  }).on("dp.change", function(e) {
  var date = e.date, 
  dDate = date._d, // e.g Wed Feb 06 2013 00:00:00 GMT+0800 (Malay Peninsula Standard Time 
  dateFormat = date._f; // e.g MM-DD-YYYY
  // Append to attribute
  control.attr('dateFormat', dateFormat);
});

然后我可以使用moment.js格式化它:

value = $('#' + fieldDefinition.Name).val();
var dateFormat = $('#' + fieldDefinition.Name).attr('dateformat');
value = moment(value, dateFormat).format('YYYY-MM-DD');
// OR - Depending on what your server accept
value = moment(value, dateFormat).format();

因此,我可以根据我的控件上的区域设置显示不同的日期/日期时间格式/分隔符,并确保它们被格式化为我想要的任何格式。在我的情况下是XML date / datetime format

答案 1 :(得分:0)

修改   $( “selectorForDP”)数据()DateTimePicker.date()._ d;

这正是您所寻找的。