2016-05-20 2 views
0

Я использую кендо щ редактор с angularjs,Изменить кендо UI редактор при нажатии клавиш

<textarea kendo-editor 
    k-on-change="vm.bodyIsDirty = true" 
    k-options="vm.editorOptions" 
    ng-model="vm.myModel" 
    style="height: 320px;"> 
</textarea> 

Я могу видеть из документации, соответствующей модели является обновлялись на событие размытия, мне нужно, чтобы он обновляется на нажатие клавиши является это возможно?

+0

Основываясь на [документации] (HTTP : //docs.telerik.com/kendo-ui/api/javascript/ui/editor), он не отображается, который можно изменить. Тем не менее, нет ничего, что помешало бы вам подключиться ['ngKeypress'] (https://docs.angularjs.org/api/ng/directive/ngKeypress) и делать то, что вам нужно. –

+0

Спасибо, ng-keypress, похоже, не работает с кендо-редактором, http://dojo.telerik.com/akozI – Petran

ответ

0

С помощью K-на-KeyUp событие, где 'updateNgModel()' является функцией, определенной в файле $ объеме в контроллере

Пример:

<div id="example" ng-app="KendoDemos"> 
    <div ng-controller="MyCtrl"> 
      <textarea kendo-editor id="editor" k-on-keyup="updateNgModel()" k-ng-model="html"></textarea> 

     <div class="box wide"> 
      <textarea ng-bind-html="html" style="width: 100%; height: 5em"></textarea> 
     </div> 
    </div> 
</div> 

<script> 
    angular.module("KendoDemos", [ "kendo.directives", "ngSanitize" ]) 
     .controller("MyCtrl", function($scope){ 
      $scope.html = "<h1>Kendo Editor</h1>\n\n" + 
      "<p>Note that 'change' is triggered when the editor loses focus.\n" + 
       "<br /> That's when the Angular scope gets updated.</p>"; 

      $scope.updateNgModel= function() { 
       $scope.html = $("#editor").data("kendoEditor").value(); 
      } 
     }) 
</script> 
Смежные вопросы