在jQuery控件中访问ng-model

时间:2014-06-02 13:09:39

标签: angularjs twitter-bootstrap-3

我使用基于jQuery的bootstrap-datepicker创建了一个AngularJS指令,我想要一些基于我发送给指令的ng-model的东西。问题是在datepicker init上点击事件我没有访问任何角度相关的东西。没有scope,没有ngModel。所有这些都是未定义的。现在,我可能会遗漏一些明显的东西,但我不知道这是什么。以下是该指令的代码:

.directive('jqCalendar', function () {
  return {
      restrict: 'EA',
      require: 'ngModel',
      template: '<div></div>',
      replace: true,
      scope:{
          ngModel: '='
      },
      link: function (scope, element, attrs, ngModelCtrl) {
          var ngModel = scope.ngModel;
          element.datepicker({
              multidate: true,
              beforeShowDay: function (date) {
                  var today = new Date();
                  var angularModel = ngModel; //ngModel is always undefined in here, why?!
                  if (date < today) return false;
              },
              format: 'dd MM yyyy',
              weekStart: 1
          })
          .on('changeDate', function (e) {
              //make server call for selected/deselected date
              alert('asd');
          });
      }
   }
})

element.datepicker({...})之外我可以看到我的模型的值,但是一旦进入所述控件,我就无法访问任何内容。有什么想法吗?

0 个答案:

没有答案