Angularjs:用户点击进入时的Onchange事件

时间:2014-03-01 07:18:39

标签: html angularjs events html-table updates

我有一个HTML表格,其中一列可编辑

<td ng-model="my.grade">
   <div contenteditable>
  {{list.grade}}
   </div>
</td>

我有一个角度函数getInformation进行一些计算并连接到后端然后 做桌子。我的目标是当用户更改上面列的值并点击输入时我想更新表并基本上重新运行函数getInformation。 我知道我应该ng-modelng-change但是我应该如何更新输入的表值?

1 个答案:

答案 0 :(得分:0)

你可以这样做:

<td ng-model="row.grade" 
    contenteditable ng-keypress='keyPressed($event)'></td>

因此,ng-modelcontenteditable必须位于同一元素上。 此外,如果您在元素上指定ng-model,则其内容的所有将替换为模型中的值。所以它应该是空的。

$scope.keyPressed = function (e){
    var code = (e.keyCode ? e.keyCode : e.which);

    if(code == 13) { // 'Enter' keycode
      $scope.getInformation(); // your function here or some other code
      e.preventDefault();
    }
}

以下是Plunkr: http://plnkr.co/edit/sHHlqF

为什么使用contenteditable?也许你只能使用<input ng-model...>