[英]AngularJS: How to listen to <input ng-change> when value is changed with a Slider?
問題:
我試圖在文本字段上使用ng-change
時遇到問題。 遇到的問題是,我正在使用滑塊更改此文本字段的值。
當我單擊文本字段並開始輸入時,ng-change事件起作用: logOutValue()
觸發並在瀏覽器中注銷。
HTML:
<div ng-repeat='obj in testObjects'> <rzslider rz-slider-model="obj.max"> <form> <input value='{{ obj.max }}' ng-change='logOutValue(obj)' ng-model="testObjects[obj.name]"> </form> </div>
滑塊通過obj.max
填寫文本輸入的值。 這可行。 同樣,在文本字段中單擊並鍵入時,該值將注銷。
在控制器中:
testObjects = {}; $scope.logOutValue = function(obj){ console.dir(obj); };
其他想法
我嘗試使用$ watch,但只有在單擊並鍵入文本框時,這似乎才觸發。
$scope.$watch('testObj', function(){ console.log('this is working?'); }, true);
如果您想捕獲綁定到外部更改事件的模型中的更改,那么我們唯一的選擇是使用$ watch。
在這里,您似乎已將$ watch添加到錯誤的變量,因為“ testObj”未作為模型綁定到輸入字段。
請觀看視頻以了解ng-change和$ watch之間的區別
https://egghead.io/lessons/angularjs-using-the-ngchange-directive-in-angular
您可以使用slideEnded
事件描述這里 :關於模型的變化通知。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.