Angular ng-model不绑定jQuery日期选择器值

角度js中的新手 – 我正在尝试将jQuery日期选择器添加到ng-model文本框中。 以下是jQuery日期选择器的链接:

src="https://resources.ibe4all.com/BrokerAssist/js/BuroRaDer_DateRangePicker.js" type="text/javascript"></script  

jQuery日期选择器代码:

  $(document).ready(function () { $('#RDate').datepicker({ dateFormat: 'dd/mm/yy', changeMonth: true, changeYear: true }); //$("#RDate").click(function () { // $(this).focus(); //}); }); function AvoidSpace(event) { var k = event ? event.which : window.event.keyCode; if (k == 32) return false; }  

这是我的HTML标记:

  
{{RDate}}

日期选择器工作就像一个魅力,但我面临的问题是日期不与我的角度模型绑定,我无法在$ scope中获取日期加上我的validation不在文本框上工作,因为它没有考虑日期作为日期选择器的输入。

请帮我一个工作的plunker

总是一个问题是让jQuery输入和角度模型直接开箱即用,这意味着你经常需要手动做一些事情来更新模型或告诉角度输入事件已被触发。

更新模型
我的情况你可以在你的控制器中更新你的模型,例如:

 app.controller('MainCtrl', function($scope) { $('#RDate').datepicker({ dateFormat: 'dd/mm/yy', changeMonth: true, changeYear: true, onSelect: function(date) { $scope.RDate = date; $scope.$apply(); console.log($scope); } }); 

});

因此,选择您设置模型值并应用范围。
我做了一个插图来说明https://plnkr.co/edit/kzdUPDcVDNGRoM9vlA4K?p=preview

添加触发事件
您可以添加触发器来获取更改事件并以这种方式通知angular:

  app.controller('MainCtrl', function($scope) { $('#RDate').datepicker({ dateFormat: 'dd/mm/yy', changeMonth: true, changeYear: true, onSelect: function(date) { angular.element($('#RDate')).triggerHandler('input'); } }); }); 

做了一个看到这个的人: https ://plnkr.co/edit/VQAqZcLarDBTW2MFaOY7?p = preview