2015-05-02 30 views
2

我在輸入元素中使用了typeahead。在更改時,我可以使用typeahead-on-select$item獲取當前值。如何獲得以前的價值?如何獲得以前的角度類型的值

我試圖ng-click設置舊值

<input type="text" 
    ng-model="personDetail.brandchainname" 
    typeahead-on-select="redeReferenceId($item, $model, $label, personDetail.id, oldValue)" 
    ng-click="oldValue = personDetail.brandchainname" 
    typeahead="data as data.name for data in brandChainNames | filter:$viewValue" 
    typeahead-editable= 'false'> 

然而,在typeahead,你可以退格鍵,以及改變數值,這一次的舊值將仍然ng-click

+0

第一名你爲什麼要OLDVALUE? –

+0

必須從之前的值中取消引用'personDetail.id'並重新引用新的值。 –

+0

我嘗試使用 'typeahead-on-select =「redeReferenceId($ item,$ model,$ label,personDetail.id,oldValue,clicked)」 ng-click =「oldValue = personDetail.brandchainname; clicked = true;」 ' 然後在控制器中, '$ scope.redeReferenceId = function(...){ $ scope.clicked = false; }' 看來這個範圍和傳遞的不一樣。 –

回答

0

您可以使用$ scope.watch爲獲得新老值

$scope.$watch('field', function (newVal, oldVal) { 
    // your task 
} 
+0

這給了我所有'oldval/newVal'中的各種值。 ''''','undefined'等等。當你在實際選擇一個值之前部分輸入時會觸發。爲此編碼證明是非常困難和錯誤的。 –

+0

pahle wahi嘗試kiya tha..thodi複雜度ke baad bhi,預期結果nahi mila –