2015-04-13 5 views
0

У меня есть DIV, на котором я применил textangular директивуУгловая модель изменений не Применив

<div text-angular ng-model="htmlContent" ng-change="processChange()" 

Затем я добавил функцию processChange к области

function demoController($scope) { 
     $scope.htmlContent = '<h2>شاہ مکھی کاتب</h2><p>....'; 
     $scope.processChange = function() { 
      $scope.htmlContent = $scope.htmlContent.replace('b', 'ب'); 
      $scope.apply(); 
     }; 
    }; 

Теперь, даже если я call apply(), замена не привязывается обратно к дисплею, пока я не потеряю фокус с div. Пока я все еще печатаю, это не применимо. Что я должен сделать для изменения модели, чтобы сразу отразить назад, поскольку пользователь все еще печатает?

Я пытаюсь разрешить преобразование символов с одного языка на другой без необходимости установки его конкретной клавиатуры.

Update: Plunker скрипт http://plnkr.co/edit/HSPxDBoPjzNNeaKoKEtY?p=preview

+1

вы можете добавить ссылку jsfiddle? – Ankita

+0

Попробуйте изменить htmlContent на object.htmlContent, $ scope.htmlContent => $ scope.object.htmlContent –

+0

Вот сценарий http://plnkr.co/edit/HSPxDBoPjzNNeaKoKEtY?p=preview –

ответ

0

Попробуйте использовать "нг-KeyUp" вместо "нг-изменения" слушателя событий. Также прочитайте, как передать событие $ event в ng-keyup, чтобы правильно использовать его в вашем случае.

0

Try нг щелчок вместо нг-изменения

<div text-angular ng-model="htmlContent" ng-click="processChange()"> 
{{htmlContent}} 
</div>