私はdatatablesを使用しています。列データの値に基づいて、列にアイコンを表示したいと考えています。 私はこのようなコードを書いている:DataTables:createdCellはページロードで機能しません(動作後)
$(document).ready(function() {
var oTable = $("#initiativeTable").DataTable({
"serverSide":true,
"processing":true,
"searching": false,
"ordering": true,
"order": [[ 0, "desc" ]],
"ajax": '${basePath}/cns/initiative/table.json?teams=${teams}&fields=${fields}&search=${search}',
"columns": [
{ "data": "id_init" },{ "data": "parent_name_init" },{ "data": "name_cust" },{ "data": "name_init" },{ "data": "code_paf" },{ "data": "name_team" },{ "data": "pa_name_emp" },{ "data": "pgm_name_emp" },{ "data": "pm_name_emp" },{ "data": "id_initstt" },{ "data": "description_contrtype" },{ "data": "description_inittype" },{ "data": "is_revised_init" }] ,
"columnDefs": [{ "targets": 12,
"createdCell": function (td, cellData, rowData, row, col) {
if (cellData == 'false') {
$(td).html("");
}else{
$(td).html("<span class='glyphicon glyphicon-ok'></span>");
}
}
}
});
});
のDataTableは正常に動作しますが、列はデータの値ではなく、アイコンが表示されます。テーブルを並べ替えるか、またはページネーションの第2ページに移動すると、createdCellが機能し、アイコンが表示されます。 ページの最初の読み込み時にのみ機能します。 問題は何ですか?事前に
おかげ
乾杯
マッテオ
代わりに 'render()'を使います - > https://datatables.net/reference/option/columns.render – davidkonrad
はい、それは最初の読み込みでも動作します。ありがとう – Matteo