Format Rupiah Datatables

Format Rupiah Datatables
29 Agustus 2024 22:50 Afan 399x
html datatable jquery

Untuk memformat angka menjadi format Rupiah dalam DataTables (plugin jQuery untuk membuat tabel dinamis), Anda bisa menggunakan render function dalam kolom definisi DataTables. Berikut adalah cara melakukannya:

  1. Tambahkan Library DataTables

    Pastikan Anda sudah menambahkan library DataTables ke dalam proyek Anda:

    html
    <link rel="stylesheet" type="text/css" href="https://cdn.datatables.net/1.11.5/css/jquery.dataTables.min.css">
    <script src="https://code.jquery.com/jquery-3.5.1.js"></script>
    <script src="https://cdn.datatables.net/1.11.5/js/jquery.dataTables.min.js"></script>
    
  2. Inisialisasi DataTables dengan Render Function

    Dalam inisialisasi DataTables, tambahkan opsi columnDefs untuk kolom yang ingin Anda format menjadi Rupiah.

    javascript
    $(document).ready(function() {
        $('#example').DataTable({
            "columnDefs": [{
                "targets": 2, // Sesuaikan dengan indeks kolom yang ingin diformat
                "render": function(data, type, row) {
                    return formatRupiah(data, 'Rp. ');
                }
            }]
        });
    });
    
    // Fungsi untuk memformat angka ke dalam format Rupiah
    function formatRupiah(angka, prefix) {
        var number_string = angka.toString(),
            sisa = number_string.length % 3,
            rupiah = number_string.substr(0, sisa),
            ribuan = number_string.substr(sisa).match(/\d{3}/g);
    
        if (ribuan) {
            separator = sisa ? '.' : '';
            rupiah += separator + ribuan.join('.');
        }
    
        return prefix + rupiah;
    }
    
  3. Contoh HTML

    Berikut contoh struktur HTML dari tabel:

    html
    <table id="example" class="display" style="width:100%">
        <thead>
            <tr>
                <th>Nama</th>
                <th>Posisi</th>
                <th>Gaji</th> <!-- Kolom yang akan diformat -->
            </tr>
        </thead>
        <tbody>
            <tr>
                <td>John Doe</td>
                <td>Manager</td>
                <td>5000000</td> <!-- Nilai yang akan diformat menjadi Rupiah -->
            </tr>
            <tr>
                <td>Jane Smith</td>
                <td>Developer</td>
                <td>3000000</td>
            </tr>
        </tbody>
    </table>
    

    Dengan konfigurasi di atas, kolom "Gaji" akan diformat menjadi format Rupiah di DataTables, misalnya "Rp. 5.000.000".