Javascript 引导datetimepicker将选定的本地日期转换为UTC

Javascript 引导datetimepicker将选定的本地日期转换为UTC,javascript,Javascript,我正在使用来自的引导datetimepicker 这提供了选择本地时间的日期时间的选项,但我无法理解的是如何在将其发送到cgi之前将其转换为UTC。我需要这样做,因为我的服务器设置为GMT时区,输入可以来自任何时区。 因此,我希望用户在tz中选择时间,但将该选择转换为gmt,并将其发送到我的cgi脚本。 如果有其他更好的方法来解决这个问题,我也会很感激 <script type="text/javascript"> $('#timetime').datetimepicker(

我正在使用来自的引导datetimepicker 这提供了选择本地时间的日期时间的选项,但我无法理解的是如何在将其发送到cgi之前将其转换为UTC。我需要这样做,因为我的服务器设置为GMT时区,输入可以来自任何时区。 因此,我希望用户在tz中选择时间,但将该选择转换为gmt,并将其发送到我的cgi脚本。 如果有其他更好的方法来解决这个问题,我也会很感激

<script type="text/javascript">
    $('#timetime').datetimepicker({
        maskInput: true,
        format: 'yyyy-MM-dd hh:mm',
    });
</script>
正在以下面代码中的形式调用它

<label for="sdate" class="control-label">* Scheduled Date (UTC/GMT)</label>
<div id="timetime" class="controls">
    <input id="sdate" name="sdate" type="text" placeholder="YYYY-MM-DD HH:MM"></input>
    <span class="add-on">
        <i data-time-icon="icon-time" data-date-icon="icon-calendar"></i>
    </span>
</div>
最终答案基于filmor提供的帮助

<script type="text/javascript">
            $('#timetime').datetimepicker({
                            maskInput: true,
                          format: 'yyyy-MM-dd hh:mm',
                          });

$("form").submit(function(){
   // Let's find the input to check
   var $input = $(this).find("input[name=sdate]");
   if ($input.val()) {
  // Value is falsey (i.e. null), lets set a new one, i have inversed this, input  should be truthy
  //$input.val() = $input.val().toISOString();
    var d = $input.val();
    var iso = new Date(d).toISOString();
  //  alert(iso);
    $input.val(iso);
   }
 });
          </script>
firefox和chrome的进一步更新

<script type="text/javascript">
    $("form").submit(function(){
    // Let's find the input to check
    var input = $(this).find("input[name=sdate]");
    if (input.val()) {
            var picker = $('#timetime').data('datetimepicker');
    //      alert(input.val());
    //      alert(picker.getLocalDate().toISOString());
            input.val(picker.getLocalDate().toISOString());
            }
    });
</script>
只需使用momentjs

函数getUTCDate{ 返回时刻$'sdate'.val.utc.格式为'YYYY-MM-DDTHH:MM:ssZZ';
}我也面临同样的问题,我的日期选择器将2015年7月14日00:00 GMTPARIS转换为2015年7月13日22:00 UTC

我使用它作为解决方法,因为我只想使用日期而不是时间

var dt = new Date($scope.END_DATE.value);
dt.setUTCHours(1); //set to utc 1 a.m.
$scope.holidays.END_DATE= dt;
该日期在数据库中存储为2015年7月14日01:00


希望有帮助

这是utc到IST之间的转换,反之亦然

//2016-08-02 12:55:19.743-UTC 2016-08-02 6:25:19.743下午-IST

var date = new Date('8/02/2016 12:55:48 AM UTC'); //2016-07-29 07:02:40.323
var s=date.toString();
alert(s);

var d = new Date('8/02/2016 6:25:00 PM GMT+0530');
//var d = new Date("August 2, 2016 18:26:00");
var n = d.toUTCString();
alert(n);

可能重复感谢该链接,还有一件事我不明白,在用户选择日期/时间后,我在哪里转换日期,以便在get请求中发送该日期只是一个旁注,没有结束标签:filmor,谢谢所有提示。它现在可以工作了,我想它有点迂回,但我几乎不懂javascript。如果其他人需要有关引导datetimepicker的代码,我会在这里粘贴代码
var date = new Date('8/02/2016 12:55:48 AM UTC'); //2016-07-29 07:02:40.323
var s=date.toString();
alert(s);

var d = new Date('8/02/2016 6:25:00 PM GMT+0530');
//var d = new Date("August 2, 2016 18:26:00");
var n = d.toUTCString();
alert(n);