2017-10-10 73 views
0

你可以這樣做,textarea添加輸入後鍵入的內容嗎?TextArea對點擊的影響進入AngularJS

<div style="display: none;" id="id_warstwy2{{$index}}"> 
     <form ng-submit="addTask(newTask, $index)"> 
      <textarea ng-model="newTask" rows="3"></textarea> 
     </form> 
     <button style="margin-left: 10px; margin-top: 5px;">Add</button> 
    </div> 
+1

?請詳細說明你的問題... –

+0

我想在鍵盤上點擊進入後稱爲函數addTask,因爲此時是你點擊進入的時候接下來在textarea裏面的br沒有調用函數 –

回答

0

創建這樣的指令:

app.directive('ngEnter', function() { 
    return function(scope, element, attrs) { 
     element.bind("keydown", function(e) { 
      if(e.which === 13) { 
       scope.$apply(function(){ 
        scope.$eval(attrs.ngEnter, {'e': e}); 
       }); 
       e.preventDefault(); 
      } 
     }); 
    }; 
}); 

HTML

<textarea ng-model="newTask" ng-enter="addTask(newTask, $index)" rows="3"></textarea> 
0

您可以使用ng-keypress

<textarea ng-model="newTask" ng-keypress="($event.charCode==13)? 
addTask(newTask, $index) : return"></textarea> 

Working demo

+0

有什麼更好的選擇? :你還是在與直播? –

+0

@AnetaJabłońskang-keypress是一個內置的角度指令,那麼爲什麼要使用coustom指令呢? – jitender

+0

@AnetaJabłońska你可以將它標記爲答案,如果這適用於你 – jitender

0

你的問題是關於如何使用輸入觸發ng-submit? 如果只是把你的按鈕內部形狀然後把type="submit"

<form ng-submit="addTask(newTask, $index)"> 
     <textarea ng-model="newTask" rows="3"></textarea> 
     <button type="submit" style="margin-left: 10px; margin-top: 5px;">Add</button> 
    </form> 
的輸入方式後