i initilizing model date function , binding input has datepicker.
<label>begin date</label> <div class='input-group date'> <input ng-model="main.begindate" class="form-control" onkeydown="return false" datepicker-popup="mm/dd/yyyy" show-weeks="false" is-open="begindate" ng-focus="begindate=true" ng-click="begindate=true" min-date="main.mindate" required/> <span class="input-group-addon"> <span class="glyphicon glyphicon-calendar"></span> </span> </div>
on first click, datepicker shows current date even though actual date different. on clicking input again, datepicker-popup resets correct date.
i tried:
- formatting date using
$filter
- custom
new date()
function - removing
min-date
attribute
how popup show date bound model?
i using:
- angularjs v1.5.0
- bootstrap v3.3.6
- angular-ui-bootstrap version: 0.13.4
i checked situation , seems versions using somehow conflicting. if use angular 1.4.9 or below , try code seems work. here plunker show that. use angular 1.5.0 or above face same issue you. use angular 1.4.9 , angular-ui-bootstrap 0.13.4 or upgrade angular ui bootstrap version.
index.html
<!doctype html> <html ng-app="app"> <head> <script src="//ajax.googleapis.com/ajax/libs/angularjs/1.4.9/angular.js"></script> <script src="//ajax.googleapis.com/ajax/libs/angularjs/1.4.9/angular-animate.js"></script> <script src="//angular-ui.github.io/bootstrap/ui-bootstrap-tpls-0.13.4.js"></script> <script src="example.js"></script> <link href="//netdna.bootstrapcdn.com/bootstrap/3.3.6/css/bootstrap.min.css" rel="stylesheet"> </head> <body> <div ng-controller="datectrl" style="padding:40px"> <label>begin date</label> <div class='input-group date'> <input ng-model="dt" class="form-control" onkeydown="return false" datepicker-popup="mm/dd/yyyy" show-weeks="false" is-open="begindateopen" ng-focus="begindateopen=true" ng-click="begindateopen=true" min-date="main.mindate" required/> <span class="input-group-addon"> <span class="glyphicon glyphicon-calendar"></span> </span> </div> </div> </body> </html>
example.js
angular.module('app', ['ui.bootstrap']); angular.module('app').controller('datectrl', function ($scope) { $scope.today = function(){ $scope.dt = new date(1998,1,5) } $scope.today(); });
Comments
Post a Comment