如何将 Datepicker 和 Timepicker 的值合并到一个变量中

how to combine values from Datepicker & Timepicker in one variable

我有 angular App U 我有 Datepicker & Timepicker 使用 angular-ui 当用户 select 日期 $Scope.dt 和设置时间 $Scope.mytime 我试图合并为一个 $Scope.SelectedDateTime 我得到 NaN。我不知道如何解决

更新 当用户 select 日期 $scope.dt 值将是 'ok 当用户 select 日期它将 'Thu Mar 05 2015 00:00:00 GMT-0500 (Eastern Standard Time)' 和 $scope.mytime 值 'Thu Mar 05 2015 23:30:00 GMT-0500 (Eastern Standard Time)' 如何组合他们在一个变量 html

      <h4>Popup</h4>
        <div class="row">
            <div class="col-md-6">
                <p class="input-group">
                  <input type="text" class="form-control" datepicker-popup="{{format}}" ng-model="dt" />
                  <span class="input-group-btn">
                    <button type="button" class="btn btn-default" ng-click="open($event)"><i class="glyphicon glyphicon-calendar"></i></button>
                  </span>
                </p>
            </div>
        </div>
    <timepicker ng-model="mytime" ng-change="changed()" hour-step="hstep" minute-step="mstep" show-meridian="ismeridian"></timepicker>
<button type="button" class="btn btn-sm btn-info" ng-click="SelectedDateTime()">Today</button>

javascript

    $scope.today = function() {
      $scope.dt = new Date();
    };
    $scope.today();
    $Scope.mytime = new Date();
 $scope.changed = function () {
    $log.log('Time changed to: ' + $scope.mytime);
  };

  $scope.clear = function() {
    $scope.mytime = null;
  };
    $Scope.SelectedDateTime = function()
    {
      var SelectedDateTime = $scope.dt +''+$scope.mytime;
    }

您不能像数字一样连接或尝试添加日期对象。

你基本上想做的是

new Date() +" "+ new Date()

将该行粘贴到浏览器控制台,您将看到如下内容:

"Thu Mar 05 2015 21:54:37 GMT-0500 (Eastern Standard Time) Thu Mar 05 2015 21:54:37 GMT-0500 (Eastern Standard Time)"

您需要将它们作为 Date 对象来处理,并使用适当的 Date 原型方法来操作它们

您需要的一些方法是:

Date.prototype.getHours()
Date.prototype.setHours()

以上假定您正在尝试实际创建一个新的 DateTime。如果不是,则不清楚您的预期结果是什么

参考:MDN Date.prototype Docs

我为 Datepicker 和 Timepicker 使用相同的 ng-model 解决了这个问题。

<input type="text" ng-model="myDateModel" datepicker-options="dateOptions" ... />

<uib-timepicker ng-model="myDateModel"...></uib-timepicker>

希望对你也有帮助!祝你好运!