AngularJS - 初始化日期输入

问题描述 投票:0回答:1

我有一个应用程序,其中有几个日期字段需要接受来自用户和数据库的值。

我找到了this解决方案,但仍然收到错误消息

错误:[ngModel:datefmt]

http://errors.angularjs.org/1.5.8/ngModel/datefmt?p0=2017-05-03

我的代码是(你也可以在评论中看到我所做的一些尝试):

var xx = $filter("date")(Date.now(), 'yyyy-MM-dd');
var yy = $filter("date")(Date.now(), 'yyyy-MM-dd');

$rootScope.Global.Time_Window_From = xx; // $filter("date")(Date.now(), 'yyyy-MM-dd'); //'2017-05-02' ; //Date.now() ; //$filter("date")(Date.now(), 'yyyy-MM-dd') ;
$rootScope.Global.Time_Window_To   = yy; // $filter("date")(Date.now(), 'yyyy-MM-dd'); //'2017-05-02' ; //Date.now() ; //$filter("date")(Date.now(), 'yyyy-MM-dd') ;

此外,与 SQL-Server 数据库交换 DATE 数据的最佳方式是什么?

javascript angularjs
1个回答
2
投票

Angularjs 的文档:

所有与日期相关的输入都要求模型是 Date 对象。如果模型是其他的,就会抛出这个错误


您应该仅使用

date-type
数据绑定到
date-type
输入。 通过
new Date(parameter)
将生成您的数据的日期对象。

angular.module("app", [])
  .controller("myCtrl", function($scope, $filter) {
    //$scope.testDate = $filter('date')(Date.now(), 'yyyy/MM/dd');
    $scope.testDate = new Date('2017-05-03');
  });
<script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.6.4/angular.min.js"></script>
<div ng-app="app" ng-controller="myCtrl">
  <input type="date" ng-model="testDate">
</div>

© www.soinside.com 2019 - 2024. All rights reserved.