【发布时间】:2018-12-28 11:38:29
【问题描述】:
当我尝试在我的范围变量中使用时,我有一个日期输入,由于某种原因,它一直变得未定义或“d-n-u”。 以为我有这个输入的手表,并且那里的值不是未定义的。 我似乎无法让它工作
html:
<input type="date" id="date-input2" ng-model="params.schedule" />
javaScript:
$scope.$watch('params.schedule', function (newValue, oldValue) {
//here I am indeed getting Mon Dec 31 2018 00:00:00 GMT+0000 (Western European //Standard Time)
console.log(newValue);
console.log($scope.params.schedule);
}, true);
//但是当我尝试使用它时,它变成了undefined...,然后是d-n-u...因为它
var scheduledDate = $scope.params.schedule;
$scope.params.schedule = scheduledDate[2] + "- " + scheduledDate[1] + "- " + scheduledDate[0];
$scope.ScheduledDate = scheduledDate.substring(0, 10);
为什么中途会丢失价值?
【问题讨论】:
-
scheduledDate 的值是多少?
-
@Sajeetharan "undefined- undefined- undefined"
-
尝试为此提供 plunkr。理解起来会更有帮助。
-
不使用观察者,而是使用
ng-change指令。它只在用户输入时触发。
标签: javascript angularjs date