Angular UI Bootstrap Datepicker:如何将日期用作字符串和特定格式

时间:2015-09-04 14:01:56

标签: angularjs angular-ui-bootstrap bootstrap-datepicker

我想要做的是当用户选择特定日期,能够将该日期用作字符串,将其作为数据放入JSON对象并从数据库中检索数据作为响应。

选择我想要的日子我在控制台日志中获取此信息:

Fri Sep 04 2015 16:15:24 GMT+0300 (GTB Daylight Time)

为了使用它,我想把它转换成这个:

20150904

我甚至使用了一个指令,但我想这只是为了预览。

.directive('datepickerPopup', function (){
return {
  restrict: 'EAC',
  require: 'ngModel',
  link: function(scope, element, attr, controller) {
    //remove the default formatter from the input directive to prevent conflict
    controller.$formatters.shift();
  }
 }
});

有没有人知道如何做到这一点? 提前谢谢!

2 个答案:

答案 0 :(得分:4)

试试这个 -

这是示例代码,您可以尝试使用代码 -

angular.module('frontendApp')
    .controller('SearchCtrl',function ($scope, $filter) {

        $scope.formattedDate = $filter('date')($scope.date_of_birth, "dd/MM/yyyy");
        console.log('Formatted Date: ' + $scope.formattedDate);

    });

替换," $ scope.date_of_birth"用你的ng模型。

参考链接

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

https://sonnguyen.ws/angularjs-datetime-format/

答案 1 :(得分:0)

您可以使用简单的JavaScript并在任何您认为合适的地方使用它(指令,过滤器,服务等)。假设日期'包含你的约会。这是代码:

    var year = date.getFullYear();
    var month = date.getMonth();
    month = month + 1;
    if(month < 10) {
        month = '0' + month;
    }
    var day = date.getDate();
    if(day < 10) {
        day = '0' + day;
    }
    date = year.toString() + month.toString() + day.toString();
    return date;