Angularjs с загрузчиком пользовательского интерфейса
Как управлять объектом DatePicker для вызова метода открытия / закрытия DatePicker. как получить объект datepicker в другой директиве angularjs.
** HTML **
<input type="text" class="form-control" uib-datepicker-popup="{{format}}" ng-model="dt" is-open="popup1.opened" datepicker-options="dateOptions" ng-required="true" close-text="Close" alt-input-formats="altInputFormats" picker-date />
Директива:
module.directive('pickerDate', function() {
return {
restrict: 'A',
priority: 1,
require: 'ngModel',
link: function(scope, element, attrs, ctrl) {
console.log(ctrl)
element.on('click', function() {
});
// console.log();
}
};
});
Когда элемент щелкает, как вызвать метод datepicker? Любая помощь будет оценена. Благодарю.
1 ответ
Решение
В HTML у вас есть is-open="popup1.opened"
, Таким образом, вы можете контролировать это, изменив логическое значение $scope.popup1.opened
,
$scope.popup1.opened = true; // open date picker
$scope.popup1.opened = false; // close date picker
Если вы хотите изменить это при нажатии на элемент, вы можете использовать ng-click
, Например:
<input type="text" class="form-control" uib-datepicker-popup="{{format}}" ng-model="dt" is-open="popup1.opened" datepicker-options="dateOptions" ng-required="true" close-text="Close" alt-input-formats="altInputFormats" picker-date />
<button type="button" ng-click="popup1.opened = !popup1.opened"></button>