我正在尝试使用uib-datepicker-popup但遇到了一个问题,一旦日历打开并且我选择了一个日期,我无法在不刷新屏幕的情况下重新打开日历。我在ng-click上单步执行函数调用,它将is-open标志设置为true,但弹出窗口在第一次之后不显示。
这是HTML:
<span class="input-group" >
<input type="text" class="input-sm " uib-datepicker-popup="{{format}}"
ng-model="requestDate" is-open="opened1"
datepicker-options="dateOptions" close-text="Close" />
<span class=" input-sm" >
<button type="button" class="btn btn-default" ng-click="open1()">
<i class="glyphicon glyphicon-calendar"></i>
</button>
</span>
</span>
控制器:
$scope.format = 'yyyy-MM-dd';
$scope.dateOptions = {
'year-format': "'yy'",
'starting-day': 1
};
$scope.open1 = function() {
$scope.opened1 = true;
};
我不明白为什么它不会打开......有什么想法吗?
答案 0 :(得分:0)
谢谢大家的帮助。在我发布问题之后,我做了很多搜索,并找到了修复问题的东西......不确定为什么它能使它工作但是确实如此。
我将open1函数更改为以下内容...我让它首先工作一个然后扩展到所以我可以将它用于所有...
'ChoiceField' object has no attribute 'is_hidden'
在我的HTML中,我更改了两行:(查找&lt; - )
$rootScope.openCalendar = function($event,whch) {
$event.preventDefault(); <- I had tried this before
$event.stopPropagation(); <- I had tried this before
$rootScope.datepicker = {[whch]: true};
};
到目前为止,我的工作效果非常好。我想我也可以通过使用Lex的建议来缩短它......
再次感谢!