javascript - 具有日期格式的 angularjs ng-options

标签 javascript angularjs

我正在尝试在 ng-options 中格式化日期,格式运行良好,但我无法将值绑定(bind)到 Controller 。我得到的值是未定义的。我做错了吗?

<select class="select" ng-model="classdate"  ng-init="classdate=''"  ng-options="d.date as d.value | date:'d,MMM,yyyy' for d in datelist" >
<option value="">Select lecture date</option>
</select>

在 Controller 中

alert($scope.classdate);

最佳答案

您需要在日期格式后删除as d.value:

angular.module('mymodule', [])
  .controller('mycontroller', ['$scope', function($scope) {
    $scope.classdateUpdated = function() {
      console.log($scope.classdate);
    };
    $scope.datelist = [new Date(2000, 01, 01), new Date(2000, 02, 01), new Date(2000, 03, 01), new Date(2000, 04, 01), new Date(2000, 05, 01), new Date(2000, 06, 01), new Date(2000, 07, 01)];
  }]);
<script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.2.23/angular.min.js"></script>
<body ng-app='mymodule'>
  <div ng-controller='mycontroller'>
    <select class="select" ng-model="classdate" ng-init="classdate=''" ng-options="d | date:'d,MMM,yyyy' for d in datelist" ng-change="classdateUpdated()">
      <option value="">Select lecture date</option>
    </select>
  </div>
</body>

关于javascript - 具有日期格式的 angularjs ng-options,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45154718/

相关文章:

javascript - FireFox 捕获自动完成输入更改事件

合并html文档时JavaScript计算输出错误(html干扰?)

javascript - 在我的指令中调用函数会产生错误 : 10 $digest() iterations reached

angularjs - 在 ionic 中使用 ngStorage 作为数组

javascript - webpack 2 uglify 插件 ES6

javascript - 使用 chrome.notifications.create 时出错 "Uncaught TypeError: Cannot read property ' create' of undefined"

javascript - $ ("value") 为空 -> jQuery

javascript - AngularJS 工作 ScrollMagic

javascript - $http 和工厂 - 这个模式是如何工作的?

javascript - AngularJS 使用的架构设计模式