datatable

1 篇文章 0 订阅
1 篇文章 0 订阅

最近在使用datatable组件,利用它处理一些页面和表格,利用写好的框架处理数据,首先会遇到csrf的问题,发送ajax会遇到 400状态码错误(坏的请求),决解的思路是:

一,在<head>中添加<meta>(如下)

<meta name="csrf-token" content="{{ csrf_token() }}">

二,在js中获取csrf_tocken的值

var csrf_token = $(window.parent.document.getElementsByTagName("meta")[5]).attr("content");

三,在ajax中添加headers

headers: {
    "X-CSRFToken": csrf_token
},

这样就解决了csrf 的问题。

..............................................................................................................................................

 

datatable它是基于boorstrat做的一些封装,如果要搞清楚里面的关系和逻辑,还需要摸索,例如下面的代码

var oTable = $('#editable-sample').dataTable({
    "aLengthMenu": [ //分页的数组
        [5, 15, 20, -1],
        [5, 15, 20, "All"] // change per page values here
    ],
​
    // set the initial value
    "bAutoWidth":false, //自动适应宽度
    "bLengthChange":true,
    "bPaginate":true,
    "iDisplayLength": 5, //用于指定一屏显示的条数,需开启分页器
    "sDom": "<'row'<'col-lg-6'l><'col-lg-6'f>r>t<'row'<'col-lg-6'i><'col-lg-6'p>>", //这是用于定义DataTable布局的一个强大的属性
    "sPaginationType": "bootstrap", //用于指定分页器风格
    "oLanguage": {
        "sLengthMenu": "_MENU_ records per page",
        "oPaginate": {
            "sPrevious": "Prev",//前一页
            "sNext": "Next"  //后一页
        }
    },
    "aoColumnDefs": [{
            'bSortable': false,
            'aTargets': [0]
        }
    ]
});

oTable是获取到整个页面表格的数据,

var nRow = $(this).parents('tr')[0]; # 当前行的数据
oTable.fnDeleteRow(nRow); # 删除这行数据,nRow指的是删除这行数据
var sData = oTable.fnGetData(nRow); # 获取当前行中的数据,这里有个坑,它得到的是数组,不是对象。
var aiNew = oTable.fnAddData(['', '', '', '', '', '','','','<a class="edit" href="">Edit</a>', '<a class="cancel" data-mode="new" href="">Cancel</a>' ]); # 当在页面添加/修改数据后,''这里会得到你添加/修改的数据,在把当前(列表)的数据添加到oTable中
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值