2017-01-17 59 views
0

我有一個控制器, ,它改變了條碼掃描器的"then"中的一些值。角度DOM修改時間

首先它設置代碼,然後設置一個"disabled"變量,然後集中一個輸入。

.then(function (barcodeData) { 
    // Success! Barcode data is here      
    $scope.selectProdotto = barcodeData; 
    $scope.txtDisabled = false; 
    var pageElements = document.querySelectorAll('input[type=number], input[type=text], textarea'); 
    var first_element = pageElements[1]; 
    first_element.focus(); 
}); 

我想要關注的輸入是;

<input class='input' type='number' ng-disabled="txtDisabled" /> 

現在的問題是輸入仍然被禁用,我改變

$scope.txtDisabled = false; 

後,所以當我做.focus()它失敗。

我的功能完成後,我的輸入被正確啓用。

所以我問什麼時候變量應用到DOM? 我如何等待輸入準備就緒並啓用重點?

回答

1

,您是否試圖

.then(function (barcodeData) { 
// Success! Barcode data is here      
$scope.selectProdotto = barcodeData; 
$scope.txtDisabled = false; 
$scope.$apply(); 
var pageElements = document.querySelectorAll('input[type=number], input[type=text], textarea'); 
var first_element = pageElements[1]; 
first_element.focus(); 

});

+0

謝謝。現在它可以工作。 –