2017-02-11 14 views
-1

Возможно, этот вопрос задавал несколько раз раньше, но я не могу найти какую-либо относительную информацию, поэтому задавался вопросом, что кто-то из вас может дать мне несколько идей.bootstrap datetimepicker, неспособный конвертировать даты и времени в UTC

Я использую самозагрузки DateTimePicker, чтобы создать инструмент, и я встречаю следующую проблему, которую моя дата ввода и время не в состоянии преобразовать время UTC через moment.js

код ниже:

$(document).ready(function() 
{ 
    $('#select').datetimepicker({ 
     format: 'ddd, MM-DD hh:mm A' 
    }); 
    $('#select').on('dp.change', function (e) { 
     $('#example').text(moment(e.date).format("ddd, MM-DD, h:mm A")); 
    }); 

}); 

<div class='col-md-5'> 
    <div class="form-group"> 
     <div class='input-group date' id='select'> 
     <input type='text' class="form-control" /> 
      <span class="input-group-addon"> 
       <span class="glyphicon glyphicon-calendar"></span> 
      </span> 
     </div> 
    </div> 
</div> 

<span id="example">__________</span> 

Когда значение выбрано, выход будет таким же, как и вы, вместо того, чтобы автоматически конвертировать в UTC. Любая помощь, чтобы указать, где я ошиблась, будет оценена!

+0

Здесь предполагается, что вы хотите конвертировать * от местного времени * до UTC. Если вы имели в виду что-то еще, уточните пожалуйста. –

+0

Hi @Matt Johnson - спасибо за информацию здесь. Ваш ответ очень интересный, и я хотел бы узнать больше, надеюсь, что вы можете привести пример. Предполагая, что я хочу, чтобы время выбора всегда было в нью-йоркском времени, независимо от того, к кому относятся часовые пояса, и конвертировать в UTC. Как я могу достичь цели. Я заглянул в документ, но не смог лучше понять, как это сделать. Любая помощь была бы очень признательна! –

+0

Вам нужно будет установить момент-часовой пояс, а затем установить опцию 'timeZone' на datepicker на' America/New_York''. См. [Эта часть документа bootstrap-datetimepicker docs] (https://github.com/Eonasdan/bootstrap-datetimepicker/blob/master/docs/Options.md#timezone). –

ответ

0

Прямо сейчас, вы показываете вашу выбранную дату с помощью .format() и переходя в нее то же значение, вы требующие от выбора даты ,

Если вы хотите формат UTC, не используйте moment().format() но использовать moment.utc().format()

См moment.js документы here

1

С moment.js вы можете преобразовать дату в utc, а затем отформатировать его как

$('#example').text(moment(e.date).utc().format("ddd, MM-DD, h:mm A")); 
+0

Исправлено это для вас. Раньше это не было. –