簡體   English   中英

AngularJS:如何聽 <input ng-change> 用滑塊更改值時?

[英]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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM