1、第一种方法比较简单
复制代码 代码如下:
"columns": [
{ "data": null,defaultContent: '<input type="button" value="呵呵" />', orderable: false },
],
从代码字面意思就能明白什么意思,但是怎样从里边获取改行的信息我还不知道,所以显得不是太实用,定义默认值还可以。
复制代码 代码如下:
{ "data": "id",orderable: false,
"mRender":function(data,type,full){
return "<input type='button' onclick='' value='"+data+"'/>";
}
},
刚看到一种方法就是使用回调,也可以获取该列的值并传递,但也只能获取一个值,仍然没有第二种方法好。
2、第二种稍微麻烦,但比较实用
复制代码 代码如下:
"fnRowCallback":function(nRow,aData,iDataIndex){
var id = $('td', nRow).eq(0).text();
var ip = $('td', nRow).eq(3).text();
$('td:eq(-1)',nRow).html('<a href="javascript:onUpdate(''+id+'',''+ip+'')">修改</a> '+
'<a href="javascript:onDel('+iDataIndex+')">删除</a>');
return nRow;
},
在初始化行数据时调用一个回调方法,可以轻松的获取该行数据,完成提交功能,但是有个缺点,需要后台json传一个空字段,也不够灵活。
3、第三种方法,就是将两种方法结合使用,可以完全前台无需后台操作
复制代码 代码如下:
{ "data": null,orderable: false,}
复制代码 代码如下:
"fnRowCallback":function(nRow,aData,iDataIndex){
var id = $('td', nRow).eq(0).text();
var ip = $('td', nRow).eq(3).text();
$('td:eq(-1)',nRow).html('<a href="javascript:onUpdate(''+id+'',''+ip+'')">修改</a> '+
'<a href="javascript:onDel('+iDataIndex+')">删除</a>');
return nRow;
},