gpt4 book ai didi

javascript - Bootstrap UI 日期选择器的无效 "ng-model"值

转载 作者:塔克拉玛干 更新时间:2023-11-02 21:15:57 25 4
gpt4 key购买 nike

我正在尝试在我的 AngularJS 应用程序中实现一个简单的日期选择器指令。关注UI Bootstrap Documentation我每次都会收到此错误:

Datepicker directive: "ng-model" value must be a Date object, a number of milliseconds since 01.01.1970 or a string representing an RFC2822 or ISO 8601 date.

我发现了一些其他相关问题 herehere , 但他们都没有帮助。

我尝试按照建议访问 $parent 和 $parent.$parent here ,这将消除错误,但不会更新模型。

这是一个重现问题的 Plunker:

http://plnkr.co/edit/CAUGqZnH77SbknmGTFiL?p=preview

<!DOCTYPE html>
<html>

<head>
<script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.4.1/angular.min.js"></script>
<script src="http://angular-ui.github.io/bootstrap/ui-bootstrap-tpls-0.13.0.js"></script>
</head>

<body ng-app="myApp" ng-controller="AppControl as appCtrl">
<label>{{dt | date:'fullDate'}}</label>

<input type="text"
class="form-control"
datepicker-popup="MMMM d, yyyy 'at' h:mm a"
ng-model="dt"
is-open="opened"
datepicker-options="dateOptions"
ng-required="true"
close-text="Close" />

<span class="input-group-btn">
<button type="button" class="btn btn-default" ng-click="open($event)">Pick</button>
</span>

<script>
angular.module("myApp", ['ui.bootstrap']).controller("AppControl", ["$scope", function($scope) {
$scope.opened = false;
$scope.dateOptions = {};
$scope.dt = new Date();
$scope.open = function($event) {
$event.preventDefault();
$event.stopPropagation();
$scope.opened = true;
};
}]);
</script>
</body>
</html>

最佳答案

问题在于您在属性“datepicker-popup”中提供的格式。

使用属性的值作为 'longDate' 如下:

datepicker-popup="longDate"

按如下方式使用它:

<input type="text" 
class="form-control"
datepicker-popup="fullDate"
ng-model="dt"
is-open="opened"
datepicker-options="dateOptions"
ng-required="true"
close-text="Close" />

我更新了 plnkr。

关于javascript - Bootstrap UI 日期选择器的无效 "ng-model"值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31054855/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com