角度的jquery datepicker有2种不同的格式

时间:2017-02-06 10:11:17

标签: jquery angularjs jquery-ui-datepicker date-format

我在jquery ui datepicker应用上有angular

它的定义如下:

app.directive('dwdatepicker', function() {
    return {
        restrict: 'A',
        require : 'ngModel',
        link : function (scope, element, attrs, ngModelCtrl) {
            $(function(){
                element.datepicker({
                    onSelect:function (date) {
                        scope.$apply(function () {
                            ngModelCtrl.$setViewValue(date);
                        });
                    },
                    dateFormat: 'dd/mm/yy',
                    changeYear: true,
                    yearRange: "-50:+0"
                });
            });
        }
    }
});

现在我想将值存储在$ strongValue中 yyyy-MM-dd 格式,并以 dd / mm / yy 格式向用户显示值

我该怎么做?

如何将jquery ui datepicker的功能与angular的功能结合起来?

谢谢。

1 个答案:

答案 0 :(得分:1)

onSelect功能中,您可以执行以下任一操作:

onSelect:function (date) {
   scope.$apply(function () {
      var isoDate = $.datepicker.formatDate('yy-mm-dd', $.datepicker.parseDate('dd/mm/yy', date));
      ngModelCtrl.$setViewValue(isoDate);
   });
}

或者

onSelect:function (date, ) {
   scope.$apply(function () {
      var isoDate = $.datepicker.formatDate('yy-mm-dd',$(this).datepicker('getDate'));
      ngModelCtrl.$setViewValue(isoDate);
   });
}

一段时间没有使用过jQuery,所以语法错误。