Gre*_*eg 18 datepicker angularjs angular-ui-bootstrap
我正在使用angular-ui datepicker,除了datepicker的初始状态之外,一切都工作正常.我选择约会后,看起来很好.见下文:
初始状态

在选择器中选择日期后

所以,显然我在第一种情况下获得了日期对象的严格版本,并在选择日期后进行了格式化.
标记
<input type="text" class="form-control"
id="birthday"
datepicker-options="datePickerOptions"
datepicker-popup="{{format}}"
data-ng-model="birthday"
data-is-open="opened"
data-ng-required="true"
data-close-text="Close"/>
<span class="input-group-btn">
<button type="button"
class="btn btn-default"
data-ng-click="open($event)">
<i class="fa fa-calendar"></i>
</button>
</span>
Run Code Online (Sandbox Code Playgroud)
控制器
var today = $scope.today = function today() {
$scope.birthday = $scope.client.birthday || new Date();
};
today();
$scope.clear = function clear() {
$scope.dt = null;
};
$scope.open = function($event) {
$event.preventDefault();
$event.stopPropagation();
$scope.opened = true;
};
$scope.format = 'MMM d, yyyy';
$scope.datePickerOptions = {
'show-weeks': false
};
Run Code Online (Sandbox Code Playgroud)
这不是一个大问题,但如果模型(需要是每个文档的日期对象)按照$scope.format开头的格式而不是格式化的日期对象,那将会非常好.此外,不确定它是否有所作为,但这个日期选择器在一个模态内.谢谢你的帮助!
UPDATE
看起来我不是唯一遇到这种情况的人,而且它与使用角度1.3有关. https://github.com/angular-ui/bootstrap/issues/2659
除了 github 问题中描述的方法之外,另一种对我有用的方法是使用纪元时间(以毫秒为单位)而不是日期对象来初始化模型,例如:
$scope.dt = new Date().getTime();
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
22711 次 |
| 最近记录: |