Javascript 角度数据选择器未触发ng更改
我有一个问题,在日期选择器与ng的变化。当我通过“单击日期”更改值时,ng change事件不会触发,但当我通过“键入日期”更改值时,ng change事件会起作用 这是我的密码Javascript 角度数据选择器未触发ng更改,javascript,angularjs,Javascript,Angularjs,我有一个问题,在日期选择器与ng的变化。当我通过“单击日期”更改值时,ng change事件不会触发,但当我通过“键入日期”更改值时,ng change事件会起作用 这是我的密码 <input ng-change="date_change();" ng-model="date_to" id="recon-date" name= "date_to" type="text" class="form-control" date-time view="month" auto-close="true
<input ng-change="date_change();" ng-model="date_to" id="recon-date" name= "date_to" type="text" class="form-control" date-time view="month" auto-close="true" min-view="month" format="MM-DD-YYYY">
我通过调查datepicker.js来追踪问题。我发现(如果我是正确的话)ngModelController.serViewValue()和$render()没有触发ng更改
我试图添加作用域。$apply(),但没有成功。我调试了几个小时,仍然没有任何进展
另外,我不想使用$scope.$watch()来解决这个问题
谢谢 无需更改,请使用
手表
$scope.date_to;
$scope.$watch("date_to", function(newValue, oldValue) {
console.log("I've changed : ", to date);
});
使用
$apply
,这可能会对您有所帮助
var scope=angular.element($('#recon-date')).scope();
scope.$apply();
可能重复感谢,但我不想使用$watch事件。我和ngchange有很多约会,不想在每一个里面都创建$watch。试着用md datepicker或angular-datepicker.js代替datepicker.js试试看。谢谢,谢谢。等我回来再试试。谢谢。谢谢。但是我不想用$watchevent。我与ngchange有很多约会,不想在每一个约会中都创建$watch。在这种情况下,您可以使用watchcollection在更改时使用
的关键是检测用户所做的更改,而不是由代码触发的更改。手表会在任何变化下运行,即使在初始化应用程序时也是如此,这是这种方法的一个问题。