如何使用angular-datatables渲染具有模型绑定的列?

Nik*_*yes 5 angularjs angular-datatables

有没有办法使用DTColumnBuilder在文本框中呈现具有模型绑定的列?

就像是:

DTColumnBuilder.newColumn('ColumnName').withTitle('Column Name').renderWith(function (data) {
   return '<input type="text" ng-model="ColumnName" />';
}),
Run Code Online (Sandbox Code Playgroud)

dav*_*rad 4

不。您可以使用以下方式呈现表格(示例):

DTColumnBuilder.newColumn('firstName', 'First name')
  .renderWith(function (data) {
       return '<input type="text" ng-model="json.firstName" />'
}),
Run Code Online (Sandbox Code Playgroud)

ng-model永远不会被识别,因为它本身不是进行渲染的角度。如果你让 Angular 进行渲染,即datatable="ng"ng-repeat可以工作:

<table datatable="ng" dt-options="dtOptions" dt-columns="dtColumns">
   <tr ng-repeat="item in json">
       <td>{{ item.id }} </td>
       <td><input ng-model="item.firstName"/></td>
       <td>{{ item.lastName }} </td>
   </tr>
</table> 
Run Code Online (Sandbox Code Playgroud)

demo -> http://plnkr.co/edit/f0ycjJvsACaumY13IVUZ?p=preview
请注意,当您在输入框中进行编辑时,JSON 项目会更新。