HTML5输入日期格式与角度范围
问题描述:
我有一个HTML 5 input type="date"
。HTML5输入日期格式与角度范围
<input type="date" required ng-model="nm.pick" id="dpicker ">
然后在我的角度控制,我分配值
nm.pick = $filter("date")(Date.now(), 'dd/MM/yyyy');
现在这会给yyyy-MM-dd
HTML5默认的日期格式。
但我要的日期格式 - dd/MM/yyyy
- 在我的HTML,我不能改变
<input type="date">
到<input type="text"
。如果我改变,日期格式将正常工作 -
然后我改变输入日期输入文本在控制器
$("#dpicker").attr("type", "text"); nm.pick = $filter("date")(Date.now(), 'dd/MM/yyyy');
这是行不通的。
基本上我想改变控制器中的dateformat到dd/MM/yyyy
而不改变HTML。
什么都是可能的方式来实现这一目标?
答
,我知道最好的方法是使用momentjs。我已经使用它与角度1.x.x没有问题。这很容易使用,检查了这一点。您可以添加以下行:
nm.pick = moment(nm.pick).format('DD-MM-YYYY');
这应该解决您的问题,
答
对于type="date"
结合
var app = angular.module("MyApp", []).controller("MyCtrl", function($scope, $filter) {
$scope.nm = {};
$scope.nm.pick = new Date($filter('date')(new Date(), "yyyy-MM-dd"));
});
<script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.6.4/angular.min.js"></script>
<body ng-app="MyApp" ng-controller="MyCtrl">
<input type="date" required ng-model="nm.pick" id="dpicker ">
</body>
阅读其他的答案,我会劝告相同与moment.js
一起去,因为它是一个专家库时玩弄日期/时间和差异不同时区。
您想使用时刻吗? – Jenny
是的.. – Arun