我正在使用模块" angular-daterangepicker" (来自here)必须绑定到范围模型。当我这样做时,它正确初始化。但是在更新时,这个模型根本没有改变:
HTML:
<input date-range-picker type="text" ng-model="dateRange"
options="dateRangeOpts" />
使用Javascript:
$scope.dateRange = {
startDate: '2015-03-01',
endDate: '2015-03-05'
};
$scope.dateRangeOpts = {
format: 'YYYY-MM-DD'
};
// watch: Not working
$scope.$watch('dateRange', function(newDate) {
console.log('New date set: ', JSON.stringify(newDate));
}, false);
直接更改dateRange
时,会调用$watch
。使用daterangepicker时,没有任何反应。
由于手表机制取自示例并且角度包装似乎是活跃的,我认为我做错了。我如何获得更新的模型?
作为一种解决方法,我使用JQuery和ng-change
读取输入值。
答案 0 :(得分:0)
您需要在datapicker
的更改功能上使用以下代码$scope.$apply(
function(){
$scope.varible = date;
}
);
答案 1 :(得分:0)
我遇到了同样的问题。 只有当我使用dict作为日期时,它才能在我手中工作。 这有效:
$scope.daterangepicker = {
dates : { startDate: null, endDate: null }
};
$scope.$watch("daterangepicker.dates", function(newDates, oldDates) {
console.log("New date set: ", newDates);
}, false);