Angularjs - 显示当前日期并将其保存在表格中

时间:2015-01-21 09:27:31

标签: javascript angularjs

我在angularjs中查看了一个视图,我只是想显示当前日期。

HTML

 <input type="text" class="form-control" ng-model="lis.ModifiedDate" id="ModifiedDate">

app.js

$scope.ModifiedDate = $filter("ModifiedDate")(Date.now(), 'yyyy-MM-dd');

请你在这里帮助我,我想显示默认日期并将其保存在桌子上。

3 个答案:

答案 0 :(得分:2)

确定。您要求的是如何格式化来自ng-bind的数据并进行编辑。您需要做的事情鲜为人知并称为格式化程序:

How to do two-way filtering in angular.js?

您需要定义读取和写入格式化日期的函数。这实际上很简单,但Date()很好地解析了日期格式。你不能只使用过滤器来做到这一点。

或者,如果您对该字段中的长日期格式感到满意,则可以对其进行编辑,并将其更新为正常的边界值。虽然相当精致 - 请参阅plunkr:

http://plnkr.co/edit/MPfGoNsG74rAV6UuvBKk?p=preview

  <body ng-controller="MainCtrl">
    <p>Edit the date in the input:</p>
    <input ng-model="boundDate">
    {{boundDate | date : 'yyyy-mm-dd'}}
  </body>

app.controller('MainCtrl', function($scope, $filter) {
  $scope.boundDate = new Date();
});

答案 1 :(得分:2)

将控制器更改为,

 $scope.ModifiedDate = $filter("date")(Date.now(), 'yyyy-MM-dd');

不要忘记将$filter注入控制器

和html,您需要使用ModifiedDate而不是lis.ModifiedDate将值绑定到文本框。

<input type="text" class="form-control" ng-model="ModifiedDate" id="ModifiedDate">

这是一个示例Plunker

答案 2 :(得分:2)

使用时刻js可以将日期转换为所需格式

$ scope.formattedDate = moment(new Date())。format(&#34; YYYY-MM-DD&#34;);

在html中你直接使用{{formattedDate}}它以yyyy-mm-dd格式显示日期