2

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

Javascript

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

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

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

由于不同的语言会有不同的显示日期值,如果我能够获取原始日期以在我的服务器中进行处理,那就太好了。

4

2 回答 2

1

我在这里找到了答案: Bootstrap 3 datetimepicker events not fire 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 日期/日期时间格式

于 2015-02-23T10:03:53.513 回答
0

编辑 $("selectorForDP").data().DateTimePicker.date()._d;

这正是您正在寻找的。

于 2015-02-23T06:39:26.727 回答