我有一个使用角度ui模态打开的模态
$scope.pdcPayment = function () {
var modalInstance = $modal.open({
templateUrl: 'pdc.html',
windowClass: 'app-modal-window',
backdrop: true,
keyboard: false,
modalFade: true,
scope: $scope,
controller: function ($scope, $modalInstance, $http) {
$scope.submitMyForm = function (form) {
if (form.bookingForm.$valid) {
$modalInstance.dismiss('cancel');
}
else {
}
};
$scope.cancel = function () {
$modalInstance.dismiss('cancel');
};
}
});
};
这是我的HTML:
<div class="col-xs-4 form-group">
<label class="col-xs-12" for="pdcDatePicker">Date on Cheque: </label>
<div class="col-xs-12">
<input type="text" id="pdcDatePicker" name="pdcDatePicker" class="form-control"/>
</div>
另请注意我用来调用日期时间选择器的方法:
<script>
jQuery('#pdcDatePicker').datetimepicker();
由于某些原因,当我点击文本框
时,日期时间选择器没有被甩掉答案 0 :(得分:1)
以下是我在ui-modal上使用datepicker的方法,一旦你拥有了正确的日期选择器库,它就会非常容易。
这是我的html代码,将其放在你的pdc.html模板html中。
<div class="form-group col-md-6">
<label class="font-bold small">Date on Cheque:</label>
<div class="dropdown">
<a class="dropdown-toggle" id="dateModelId" role="button" data-toggle="dropdown" data-target="#" href="#">
<div class="input-group dropdown">
<input type="text"
name="date"
class="form-control"
data-ng-model="dateModel">
<span class="input-group-addon"> <i class="fa fa-calendar"></i></span>
</div>
</a>
<ul class="dropdown-menu" role="menu" aria-labelledby="dLabel">
<datetimepicker
data-ng-model="dateModel"
data-datetimepicker-config="{startView:'day', minView:'day',dropdownSelector: '#dateModelId' }">
</datetimepicker>
</ul>
</div>
并且你的角度代码没有任何不同,因为这个日期选择器是一个原生的angular-js库,不需要编写Jquery代码,你可以通过访问$ scope.dateModel来获取数据。
如果你想知道我是如何从我的主控制器触发ui-modal的话,那就是。
$scope.onShowDialog = function (ev) {
$mdDialog.show({
controller: 'dialogController',
templateUrl: 'pdc.html',
parent: angular.element(document.body),
targetEvent: ev,
clickOutsideToClose: false,
hasBackdrop: false,
escapeToClose: true,
})
.then(function (answer) {
}, function () {
});
}
控制器可以是内联的,也可以是对项目内对话框控制器的调用,如上所示。
这就是你如何调用对话框,
<a class="btn btn-default" type="button" ng-click="onShowDialog('$event)">
Show Dialog</a>