2015-01-23 4 views
2

Как мы получаем событие нажатия клавиш и его значение в Angular на Android? Пользуюсь PhoneGap Кордова Угловая JSКак получить событие нажатия клавиш в угловом режиме на Android?

<form name="myForm"> 
<input type="search" name="userName" ng-model="user" class="search-input" style="width: 96%; margin: 6px auto 6px auto;" placeholder="Начните вводить название"> 
</form> 
</div> 
</div> 
user = {{user}} 

Любая помощь очень ценится.

+0

нг-нажатие = «yourmethod (пользователь)» – Ved

ответ

2
<form name="myForm"> 
    <input type="search" 
      name="userName" 
      ng-model="user" 
      ng-keypress="yourMethod(user)" class="search-input" 
      style="width: 96%; margin: 6px auto 6px auto;" 
      placeholder="Начните вводить название"> 
</form> 

user = {{user}} 

UPDATE:

<input type="search" name="userName" ng-model="user" ng-change="getValue(user)" class="search-input" style="width: 96%; margin: 6px auto 6px auto;" placeholder="Начните вводить название"> 

И мой контроллер $scope.getValue = function (calll) { alert(calll); }

+0

Эта функция не работает на устройстве ... только клавиатура ПК –

+0

чем использование нг-изменение .. – Ved

+0

Как получить значение ??? –

0
<form name="myForm"> 
<input type="search" name="userName" ng-keypress="getValue($event) ng-model="user" class="search-input" style="width: 96%; margin: 6px auto 6px auto;" placeholder="Начните вводить название"> 
</form> 
</div> 
</div> 
user = {{user}} 


In controller :- 

$scope.getValue = function (event) { console.log(event) } 
+0

Эта функция не работает на устройстве ... только ПК-клавиатура –

+0

Я не могу получить значение –

0

нг- нажатие функция доступна в angularjs,

Вы также можете использовать ng-keydown и ng-keyup аналогичным образом. FYI.

Для справки, ng-keypress tutorial

+0

Эта функция не работает на устройстве ... только ПК-клавиатура –

0

Создание атрибута директивы может работать лучше в этом случае.

angular.module('inputDirective', []) 
    .directive("mydirective", function() { 
     var directive = {}; 
     directive.restrict = 'A'; 
     directive.scope = {}; 
     directive.link = function(scope, element, attrs, controller) { 
      //read the text typed in the div 
      function read() { 
       var html = element.html(); 
      } 

      //do this whenever someone starts typing 
      element.bind("keyup", function() { 
       scope.$apply(read); 
      }); 
     } 

     return directive; 
    }) 

В html добавить атрибут к тегу.

<input mydirective type="search" name="userName" ng-model="user" class="search-input" style="width: 96%; margin: 6px auto 6px auto;" placeholder="Начните вводить название"> 
Смежные вопросы