我使用720kb.datepicker来显示日历。我想以手动方式从链接打开日历。
这是html代码:
getElementById
我想在文本中填写clik时打开日历"打开日历"
我试着专注于这个文档,但我无法得到它: http://pythonhackers.com/p/720kb/angular-datepicker
特别是在本节中:手动显示和隐藏datepicker
怎么办?感谢,
答案 0 :(得分:1)
您还需要与datepicker-show一起使用datepicker-toggle。这里is my updated plunkr
我不太确定他们是否已经处理了所有查看源代码的事件。您可能必须使用jQuery和$(window).on('blur click',function(){})和$('#spanId')。on('blur click',function(){})等等跨度,窗口让这个完全正常工作。
控制器:
var app = angular.module('plunker', ['720kb.datepicker']);
app.controller('MainCtrl', function($scope, $interval, $window) {
$scope.visibility = false;
$scope.toggled = false;
$scope.toggle = function(){
$scope.visibility = !$scope.visibility;
$scope.toggled = !$scope.toggled;
}
});
HTML:
<datepicker date-format="dd/MM/yyyy" datepicker-toggle="false" datepicker-show="{{ visibility }}">
<!-- Use flag for visibility -->
<input type="text" class="form-control" id="date-birth" name="dateBirth" required="" ng-model="dateBirth" placeholder="DD / MM / YYYY" maxlength="10" ng-pattern="/^(\d{1,2})\/(\d{1,2})\/(\d{4})$/" validator="isDateofBirthMore" />
<!-- Set flag = true on click -->
<span id="openMe" ng-click="toggle()">open calendar</span>
</datepicker>
仅通过单击跨度切换开/关工作。如果触发事件不适合您,您可以使用更改范围文本来在切换时读取打开/关闭。
答案 1 :(得分:-1)
只需使用标记来跟踪可见性:
<datepicker date-format="dd/MM/yyyy"
datepicker-show="{{ showDatepicker }}"> <!-- Use flag for visibility -->
<input type="text" class="form-control" id="date-birth" name="dateBirth"
required
ng-model="dateBirth"
placeholder="DD / MM / YYYY"
maxlength="10"
ng-pattern="/^(\d{1,2})\/(\d{1,2})\/(\d{4})$/"
validator="isDateofBirthMore" />
<!-- Toggle flag on click -->
<span ng-click="showDatepicker = !showDatepicker">open calendar</span>
</datepicker>