2016-05-30 11 views
0

Ich versuche, das aktuelle/nächste Element in meinem Controller zu bekommen. Was ich tun möchte, um das nächste Element zu bekommen und den Fokus darauf setzen zu können. Ich kann dies mit Javascript tun, aber nicht sicher, wie man die event in eckigen bekommen, so dass ich auf die e.relatedTarget zugreifen kann. Ich bin auch offen für Verbesserungen und VorschlägeDeaktivieren Sie alle Eingänge, stellen Sie den Fokus auf den nächsten, sobald sie wieder aktiviert sind

Plunker

<input type="text" class="input__text" name="name" ng-model="name" ng-change="bluryLines(name)" ng-model-options="{ updateOn: 'blur'}" ng-disabled="blured"> 

      function focusNextInput (e) { 
       console.log('focusNextInput'); 

       var target = e.target; 
       var relatedTarget = e.relatedTarget; 

       if (relatedTarget !== null) { 
        console.log('has a related target'); 
        relatedTarget.focus(); 
       } 
      } 

      $scope.bluryLines = function(value) { 
       $scope.blured = true; 

       if (value === '') { 
        console.log('value is empty'); 
       } else { 
        console.log(value); 
       } 

       $timeout(function() { 
        $scope.blured = false; 

        //how do I get the event here to be passed into the function 
        focusNextInput(); 
       }, 1000); 
      }; 

Antwort

0

Haben Sie in Winkel mit $ event versucht.

<input type="text" class="input__text" name="name" ng-model="name" ng-click='functionname($event)'> 

Grüße,
Selvam.M

+0

'ng-change' nicht unterstützt' $ event' –

Verwandte Themen