jquery.datatables自定义button按钮
方法一:
"columns": [
{ "data": null,defaultContent: '<input type="button" onclick="" value="呵呵" />', orderable: false },
],
从里边获取改行的信息,不是太实用,定义默认值还可以。
例如:
{ "data": "id",orderable: false,
"mRender":function(data,type,full){
return "<input type='button' onclick='' value='"+data+"'/>";
}
},
使用回调,也可以获取该列的值并传递,但也只能获取一个值,仍然没有第二种方法好。
方法二,较麻烦,但实用。
"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传一个空字段,也不够灵活。
方法三,就是将两种方法结合使用,可以完全前台无需后台操作。
{ "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;
},