Jquery 向datatable行动态添加按钮
在加载时向datatable单元格添加自定义HTML时,我遇到了一个问题 单击选项卡打开页面时,我调用ajax函数来获取数据 该位工作正常,我获得了所需的所有数据。现在的问题是,对于Jquery 向datatable行动态添加按钮,jquery,html,datatables,Jquery,Html,Datatables,在加载时向datatable单元格添加自定义HTML时,我遇到了一个问题 单击选项卡打开页面时,我调用ajax函数来获取数据 该位工作正常,我获得了所需的所有数据。现在的问题是,对于编辑列,我想添加一个图标按钮,以单击编辑记录。我这样做是使用一个函数addBellsWhistles 它没有写入控制台,没有调用消息弹出窗口,特别是没有调用我的函数(我只是将它们单独命名以获得戏剧性效果) 有人能给我个主意吗 PS这里是datatables创建的datatable分页容器 以前的 1. 2. 下一个
编辑
列,我想添加一个图标按钮
,以单击编辑记录。我这样做是使用一个函数addBellsWhistles
它没有写入控制台,没有调用消息弹出窗口,特别是没有调用我的函数(我只是将它们单独命名以获得戏剧性效果)
有人能给我个主意吗
PS这里是datatables创建的datatable分页容器
以前的
1.
2.
下一个
调用
fnCreatedRow
函数,该函数在创建每一行后激发(回调)。
从那里调用您的方法来执行所需的操作。在这种情况下:
$('users_table')。数据表({
“fnCreatedRow”:函数(nRow、aData、iDataIndex){
$('td:eq(0'),nRow)。追加(“”);
},
});
我相信columns.render()提供了您需要的功能。@MarcoBorchert->我相信您是对的。但有一件事我没想到,它现在为表中的每个单元格在单元格(0,0)中添加了一个图标。e、 g.110 ICONSand在所有第0列单元格中,然后…:%所以,谢谢你,它成功了,只是需要一些工作。
// CLICK on the tab to open the User Manager -> Load all records into DataTable
$("#admin_details").click(function(){
// Send through the function to perform in the $_GET variable
$.ajax({
url: './inc/AdminScripts.php?argument=loadAllRecords'
})
.done(function(html) {
var t = $('#users_table').DataTable();
t.clear();
var obj = eval(html);
// ADD acquired data items to the DataTable
$.each(obj, function(key,value) {
t.row.add( [
value.edit,
value.name,
value.surname,
value.username,
value.email,
value.language,
value.securityQuestion,
value.securityAnswer,
value.administrator,
value.status,
value.id
] ).draw();
});
addBellsWhistles();
})
});
function addBellsWhistles(){
$('#users_table tr').children("td:nth-child(1)").append("<div class='col1d'><button class='editBut'><img src='img/property32.png'></button></div>");
}
$( ".dataTables_paginate a" ).on( 'click', '.paginate_button', function () {
console.log('paging');
$(".confirmUploadError .confirm_text").html("Loading records. Please wait.");
$(".confirmUploadError").fadeIn(250).delay(300).fadeOut(650);
addBellsWhistles();
});
<div class="dataTables_paginate paging_simple_numbers" id="users_table_paginate">
<a class="paginate_button previous disabled" aria-controls="users_table" data-dt-idx="0" tabindex="0" id="users_table_previous">Previous</a>
<span>
<a class="paginate_button current" aria-controls="users_table" data-dt-idx="1" tabindex="0">1</a>
<a class="paginate_button " aria-controls="users_table" data-dt-idx="2" tabindex="0">2</a>
</span>
<a class="paginate_button next" aria-controls="users_table" data-dt-idx="3" tabindex="0" id="users_table_next">Next</a>
</div>
$('#users_table').dataTable( {
"fnCreatedRow": function( nRow, aData, iDataIndex ) {
$('td:eq(0)', nRow).append("<div class='col1d'><button class='editBut'><img >src='img/property32.png'></button></div>");
},
});
This Code is working for me here i am adding button to get next set records or search record from server.
ObjTableId.button().add(3, {
action: function () {
// your code goes here !
},
text: 'Button text',
className: "css_class_name",
attr: {
title: 'title',
id: 'btnId'
}
});