2016-08-10 13 views
5

Resimde aşağıda gösterildiği gibi iki giriş alanı var.Belirli koşullardan sonra etkinleştirilecek olan devre dışı bırakılmış alanda otomatik odaklama

Two Input Fields

Ben artık devre dışı sonraki alana odaklanmaya çalışıyorum ama ilk alana karakterlerin MAXLENGTH girdikten sonra etkin olacaktı. Ve etkinleştirildikten sonra imleci bir sonraki sahada otomatik olarak istiyorum. ng-devre dışı yerine javascript engelli özelliğini kullanın kullanarak çalışın

.directive('moveNext', function(){ 
return{ 
    restrict: 'A', 
    link: function($scope, element){ 
     element.on("input", function(e){ 
      if((element.val().length==element.attr("maxlength"))){ 
       console.log('asdfasdf'); 
       var tabindex = 1; 
       var $nextelement = $('input[tabindex='+(tabindex+1)+']'); 
       console.log($nextelement); 
       if($nextelement){ 
        console.log('asdf'); 
        $nextelement.focus(); 
       } 
      } 
     }); 
    } 
} 
}); 

cevap

5

:

kullanıyorum kodu aşağıda verilmiştir.

document.getElementById("myText").disabled = true; 

Ve sonra direktifi altında sahte birinci yukarıda yapmak ve aşağıda gibi sonraki öğe odağı taşımak: alanına etkin hale geçmeden döngüsünü sindirmek sonra ilk olarak adlandırılır oluyor davanız odak olarak

document.getElementById("myText").disabled = false; 
$nextelement.focus(); 

.

+1

Aynı şekilde kullandım ve benim için çalıştı. –

İlgili konular