2016-03-22 14 views
7

Mam form z dynamicznym wstawieniem input do DOM (z innej wtyczki). Czy jest sposób na odczytanie wartości z tego wejścia bez modelu ng?Angular: jak uzyskać wartość wejściową bez modelu ng

<form name="myForm" data-my-directive> 
    <div class="customPlugin"> 
     <!-- here input without ng-modeal appears: --> 
     [ <input type="text" name="foo" value="bar" /> ] 
    </div> 
</form> 

patrzę na wielu przykładach, ale wszędzie ludzie pisze o ng-model ... :(

+0

Hi można skonfigurować ryba z wtyczki/rozszerzenia lub nawet nazwać ją zacząć? –

+0

Właśnie dla ciebie zacząć tutaj jest rozwiązanie za pomocą manipulacji domem za pośrednictwem kontrolera: http://stackoverflow.com/a/31741293/3298029, który dynamicznie dodaje model ng. –

+1

Możesz spróbować z 'kątowym.elementem': https://docs.angularjs.org/api/ng/function/angular.element –

Odpowiedz

2

Można użyć dyrektywy:

JSFiddle

.directive('myDirective', function() { 
    return { 
     link: function(scope, element, attrs) { 
      console.log(element.find('input').attr('value')); 
     } 
    }; 
}); 
3

użyć dyrektywy, które zegarki do zmian

Możesz wtedy jako podpisz to do swojego zakresu, jeśli uznasz to za konieczne.

.directive('watchForChanges', function() { 
     return { 
      link: function(scope, element, attrs) { 
       element.on('change', function (e) { 
        console.log(e.target.value); 
        // scope.myValue = e.target.value; 
       }) 
      } 
     } 
}); 

PLNKR: http://plnkr.co/edit/qrj8ZbUya5wE0EylFcGG?p=preview

Powiązane problemy