ui.bootstrap.datepicker is-open无法在模态中工作
我使用Bootstrap UI的datepicker指令,我试图有一个datepickerbutton,像在原来的例子中打开datepickerpopup,但它不能在模式窗口中工作。
参见PLUNKER
我究竟做错了什么?
只要改成: is-open="opened"
到:
is-open="$parent.opened"
修正了Demo Plunker
所以相关的HTML代码片段如下所示:
<div class="input-group"> <input type="text" class="form-control" datepicker-popup="dd.mm.yyyy" ng-model="dt" is-open="$parent.opened" ng-required="true" close-text="Close" /> <span class="input-group-btn"> <button style="height:34px;" class="btn btn-default" ng-click="open()"> <i class="icon-calendar"></i></button> <b><- button not working</b> </span> </div>
我不得不暂停工作:
function toggleStart($event) { $event.preventDefault(); $event.stopPropagation(); $timeout(function () { vm.isStartOpen = !vm.isStartOpen; }); }
我的模板看起来像这样:
<input type="text" class="form-control" datepicker-popup ng-model="vm.startDate" is-open="vm.isStartOpen" /> <span class="input-group-btn"> <button type="button" class="btn btn-default" ng-click="vm.toggleStart($event)"> <i class="glyphicon glyphicon-calendar"></i> </button> </span>
datepicker指令创build它自己的范围,这是外面不能访问。所以要解决这个问题,你可以使用。
$parent.isopen
或者使用一些Object属性名来避免原型inheritance
$scope.config.isopen=true;
ng-model="config.isopen"
而不是ng-model="isopen"
。
你也是这样工作的初始化dateselect器的图标。
HTML
<p class="input-group" ng-disabled="invoiceDateDisable"> <input is-open="opened" type="text" datepicker-popup="M/d/yyyy" ng-model="Date" datepicker-options="dateOptions" /> <span class="input-group-btn"> <button type="button" class="btn btn-default" ng-click="open()"><i class="glyphicon glyphicon-calendar"></i></button> </span> </p>
JavaScript的
$scope.open = function () { $scope.opened = true; };
你并不需要一个open
函数:
<div class="input-group"> <input type="text" class="form-control" datepicker-popup="dd.mm.yyyy" ng-model="dt" is-open="$parent.opened" ng-required="true" close-text="Close" /> <span class="input-group-btn"> <button style="height:34px;" class="btn btn-default" ng-click="$parent.opened=!$parent.opened"> <i class="icon-calendar"></i></button> <b><- button not working</b> </span> </div>
- 有缺陷的angular度ui bootstrap指令模板
- 你可以覆盖AngularUI Bootstrap中的特定模板?
- angularjs:防止Bootstrap莫代尔消失,当点击外面或按逃生?
- 响应式下拉导航栏与angular度UI引导(完成在正确的angular度types的方式)
- 我应该使用Angular UI Bootstrap还是纯Bootstrap 3?
- ui-bootstrap-tpls.min.js和ui-bootstrap.min.js有什么区别?
- Angular js – route-ui添加默认参数
- angularjs ui-router – 如何构build跨应用程序的全局主状态
- 在AngularJS中使用AngularUI Bootstrap Modal的范围问题