我有一个包装JqueryUI datepicker的Angular指令:
angular.module('uiControls').directive('datePicker', [function () {
return {
restrict: 'A',
require: "ngModel",
link: function(scope, elem, attrs, ngModelCtrl) {
var options = {
dateFormat: "mm/dd/yy",
inline: true,
showOtherMonths: true,
dayNamesMin: ['Sun', 'Mon', 'Tue', 'Wed', 'Thu', 'Fri', 'Sat'],
onSelect: function (dateText) {
scope.$apply(function () {
ngModelCtrl.$setViewValue(dateText);
});
}
};
elem.datepicker(options);
}
};
} ]);
我这样使用它:
<div date-picker ng-model="currentFilter.filter"></div>
我的问题是:
默认情况下选择当前日期时会打开日期选择器,但范围上的模型为空。只有当用户真正点击日期时,才会触发onSelect事件,现在模型有一个值。 如何根据datepicker中的选定日期初始化模型? 我试图在指令中添加一个监视器,并从外部更改模型,但它不起作用。
感谢。
答案 0 :(得分:1)
前一段时间问过这个问题,但它可能有助于其他人: 尝试使用隔离范围绑定'='。 :
{1200, 100}