我在我的 Angular JS 应用程序中使用Pikaday日期选择器插件。
提交时是否可以有不同的查看格式和不同的格式?
例如:2014 年 1 月 1 日(显示)2014 年 1 月 1 日(提交表单时)
我知道我可以在发布内容时应用过滤器。但是,由于在许多地方都使用了日期选择器,所以我必须在所有地方分别进行。如果插件以某种格式更新我的 ng-model 但显示方式不同,那就太好了。
我在我的 Angular JS 应用程序中使用Pikaday日期选择器插件。
提交时是否可以有不同的查看格式和不同的格式?
例如:2014 年 1 月 1 日(显示)2014 年 1 月 1 日(提交表单时)
我知道我可以在发布内容时应用过滤器。但是,由于在许多地方都使用了日期选择器,所以我必须在所有地方分别进行。如果插件以某种格式更新我的 ng-model 但显示方式不同,那就太好了。
您可以通过使用 angularjs 指令(格式化程序和解析器)来获得它。
例如使用 moment.js:
app.directive('fdate', function () {
return {
require: 'ngModel',
link: function(elem, $scope, attrs, ngModel){
ngModel.$formatters.push(function(val)
{
return moment(val).format("DD/MM/YYYY");
});
ngModel.$parsers.push(function(val){
return moment(val, "DD/MM/YYYY").valueOf();
});
}
}
});
在你的 html 中:
<input type="text" ng-model="obj.yourdate" fdate>
我以这个小提琴为例:http: //jsfiddle.net/arunpjohny/wNBAn/