使用Datatable java的POST服务

时间:2017-01-01 14:38:49

标签: angularjs post datatables

我需要使用angular js将完整的数据表数据提交到数据库中。

通过下面给出的angularjs和代码填充数据

vm.dataTableInstance = $('.datatable-basic').DataTable({
            data : priorityAttrs,
            columns : [
                       { data: 'priority', title : 'Priority', width : '10%' },
                       { data: 'attrName', title : 'Attribute Name', width: '30%' },
                       { data: null, title : 'Notes', width: '50%' ,render:function(data ,type,row){
                           return '<input type="text" id="notesInputTxt" class="form-control" placeholder="Enter the note" value='+data.notes+'>';
                       }},
                       { data: null, orderable : false, width:'5%', render : function(data, type, row){
                           return '<ul class="icons-list"><li class="delete-user text-danger-600" onclick="angular.element(this).scope().deleteAttribute(this, \''+data.attrName+'\')"><a><i class="icon-trash"></i></a></li></ul>';
                       }}
                   ],

现在我需要使用post request从数据表中获取所有数据。请找到截图。enter image description here

1 个答案:

答案 0 :(得分:0)

使用rows().data提取所有数据并将其放入数组,然后使用http。

发布

角度控制器

var module = angular.module('app',[]);

module.controller('Ctrl', function ($http) {

vm.dataTableInstance = $('.datatable-basic').DataTable({
            data : priorityAttrs,
            columns : [
                       { data: 'priority', title : 'Priority', width : '10%' },
                       { data: 'attrName', title : 'Attribute Name', width: '30%' },
                       { data: null, title : 'Notes', width: '50%' ,render:function(data ,type,row){
                           return '<input type="text" id="notesInputTxt" class="form-control" placeholder="Enter the note" value='+data.notes+'>';
                       }},
                       { data: null, orderable : false, width:'5%', render : function(data, type, row){
                           return '<ul class="icons-list"><li class="delete-user text-danger-600" onclick="angular.element(this).scope().deleteAttribute(this, \''+data.attrName+'\')"><a><i class="icon-trash"></i></a></li></ul>';
                       }}
                   ],

var arrayData = vm.dataTableInstance.rows().data();     

 $http.post('services/api', arrayData).then(function (resp) {
       // Success
       console.log(resp.data);
 }, console.log('Error')),


});