我按照this问题进行操作,我需要格式化生成的时间字符串。我使用bootstrap datetimepicker和moment.js,我有这个代码:
$("#datetimepicker2").on("dp.change", function (e) {
console.log('date2: ' + e.date.format('MM.DD.YYYY HH:mm:ss') );
end_date = e.date;
end_date.toJSON = function(){ return moment(this).format(); };
});
console.log(JSON.stringify(end_date));
我的问题是我收到了
"2017-06-20T17:29:05+03:00"
虽然我需要这样的东西:
"2017-06-20T17:29:05.013Z"
任何有关如何获得它的想法都会受到欢迎。谢谢。
答案 0 :(得分:0)
您可以将moment对象转换为js date并在其上使用toISOString()。 。力矩()TODATE()toISOString();
答案 1 :(得分:0)
您可以在.format()之前添加.tz()并在.tz(" America / New_York")等内传入时区。
$(function() {
$("#datetimepicker2").datepicker();
$("#datetimepicker2").on("change", function(e) {
console.log(moment().utc($(this).val()).format());
});
});

<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<script src="https://code.jquery.com/ui/1.12.0/jquery-ui.min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/moment.js/2.18.1/moment.min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/moment-timezone/0.5.13/moment-timezone.min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/moment-timezone/0.5.13/moment-timezone-with-data.js"></script>
Date: <input type="text" id="datetimepicker2" />
&#13;