Datatable tidak berfungsi (case closed)

CASE CLOSED kelebihan <tr> wkwk

saya bikin table dan ingin mengaplikasikan bootstrap datatable kok tidak berfungsi ya table id juga udah saya coba sesuaikan sama script tetep ga ngaruh

headernya

<link rel="stylesheet" type="text/css" href="<?= base_url() ?>assets/bootstrap/css/jquery.dataTables.css">
  <link rel="stylesheet" type="text/css" href="<?= base_url() ?>assets/bootstrap/css/dataTables.bootstrap.css">
  <link rel="stylesheet" href="<? base_url() ?>assets/bootstrap/DataTables/datatables.min.css">
  <script src="<?= base_url() ?>assets/AdminLTE/bower_components/jquery/dist/jquery.min.js"></script>
  <!-- SlimScroll -->
  <script src="<?= base_url() ?>assets/AdminLTE/bower_components/jquery-slimscroll/jquery.slimscroll.min.js"></script>
  <!-- FastClick -->
  <script src="<?= base_url() ?>assets/AdminLTE/bower_components/fastclick/lib/fastclick.js"></script>

  <!-- dataTables -->
  <script src="<?= base_url() ?>assets/bootstrap/js/script.js"></script>
  <script src="<?= base_url() ?>assets/bootstrap/js/jquery.min.js"></script>
  <script type="text/javascript" src="<?= base_url() ?>assets/bootstrap/js/jquery.js"></script>
  <script type="text/javascript" src="<?= base_url() ?>assets/bootstrap/js/jquery.dataTables.js"></script>

isinya

<div class="content-wrapper">
<div class="panel-body">
<!-- <h1>Tabel Buku</h1> -->
<div class="table-responsive">
<!-- /.box-header -->
<div class="box-body">
<table id="example" class="table table-striped table-bordered data display nowrap" style="width:100%">
<thead class="thead-dark">
<tr>
<th scope="col">no</th>
<th scope="col">Judul</th>
<th scope="col">Pengarang</th>
<th scope="col">Penerbit</th>
<th scope="col">ISBN</th>
<th scope="col">Jumlah Buku</th>
</tr>
</thead>
<tbody>
<?php $no =1; ?>
<?php foreach ($buku as $data):?>
<tr id="data_<=$data['id']?>">
<tr>
<td><?=$no++?></td>
<td><?=$data['judul']?></td>
<td><?=$data['pengarang']?></td>
<td><?=$data['penerbit']?></td>

<td><?=$data['isbn']?></td>

<td><?=$data['jumlah_buku']?></td>

<input type="hidden" value="<=$data['id']?>">
</tr>
<?php endforeach ?>

</tbody>
</table>
</div>
</div>
</div>
</div>

footer

  <script>
    $(document).ready(function(){
      $('.data').DataTable();
    });
  </script>

  <!-- Bootstrap core JavaScript -->
  <!-- <script src="<?=base_url();?>assets2/vendor/jquery/jquery.min.js"></script> -->
  <script src="<?=base_url();?>assets2/vendor/bootstrap/js/bootstrap.bundle.min.js"></script>

  <!-- Plugin JavaScript -->
  <script src="<?=base_url();?>assets2/vendor/jquery-easing/jquery.easing.min.js"></script> -->
  <!-- <script src="<?=base_url();?>assets2/vendor/magnific-popup/jquery.magnific-popup.min.js"></script>

  <!-- Custom scripts for this template -->
  <script src="<?=base_url();?>assets2/js/creative.min.js"></script>

avatar h1rum421
@h1rum421

6 Kontribusi 0 Poin

Diperbarui 5 tahun yang lalu

3 Jawaban:

Berikut ini contoh menggunakan datatables dengan CI. saya memakai library jquery dan datatables dari CDN jadi untuk menjalankan skrip ini perlu koneksi internet. jika ingin offline maka library tsb perlu didownload terlebih dulu.

<pre> &lt;html&gt; &lt;head&gt; &lt;link rel="stylesheet" type="text/css" href="https://cdn.datatables.net/1.10.18/css/jquery.dataTables.css"&gt; &lt;script src="https://code.jquery.com/jquery-2.2.4.min.js" integrity="sha256-BbhdlvQf/xTY9gja0Dq3HiwQF8LaCRTXxZKRutelT44=" crossorigin="anonymous"&gt;&lt;/script&gt; &lt;script src="https://cdn.datatables.net/1.10.18/js/jquery.dataTables.js"&gt;&lt;/script&gt; &lt;/head&gt; &lt;body&gt; &lt;div class="content-wrapper"&gt; &lt;div class="panel-body"&gt; &lt;!-- &lt;h1&gt;Tabel Buku&lt;/h1&gt; --&gt; &lt;div class="table-responsive"&gt; &lt;!-- /.box-header --&gt; &lt;div class="box-body"&gt; &lt;table id="example" class="table table-striped table-bordered data display nowrap" style="width:100%"&gt; &lt;thead class="thead-dark"&gt; &lt;tr&gt; &lt;th scope="col"&gt;no&lt;/th&gt; &lt;th scope="col"&gt;Judul&lt;/th&gt; &lt;/tr&gt; &lt;/thead&gt; &lt;tbody&gt; &lt;tr&gt;&lt;td&gt;1&lt;/td&gt;&lt;td&gt;satu&lt;/td&gt;&lt;/tr&gt; &lt;tr&gt;&lt;td&gt;2&lt;/td&gt;&lt;td&gt;dua&lt;/td&gt;&lt;/tr&gt; &lt;tr&gt;&lt;td&gt;3&lt;/td&gt;&lt;td&gt;tiga&lt;/td&gt;&lt;/tr&gt; &lt;/tbody&gt; &lt;/table&gt; &lt;/div&gt; &lt;/div&gt; &lt;/div&gt; &lt;/div&gt; &lt;script&gt; $(document).ready(function(){ $('.data').DataTable(); }); &lt;/script&gt; &lt;/body&gt; &lt;/html&gt; </pre>

avatar 24361
@24361

17 Kontribusi 9 Poin

Dipost 5 tahun yang lalu

Tanggapan

saya udah donwload librarynya nyoba pake cdn juga ga ngaruh

coba pada table id nya di ganti dan di sesuaikan dengan js id datatable

<pre> &lt;table id="example" &lt;/table&gt;

kemudian sesuaikan js nya &lt;script&gt; $(document).ready(function(){ $('.example').DataTable(); }); &lt;/script&gt; </pre>

atau buat seperti ini

<pre> &lt;table id="data" &lt;/table&gt;

&lt;script&gt; $(document).ready(function(){ $('.data').DataTable(); }); &lt;/script&gt;

kalau tidak bisa juga coba menggunakan cdn datatable. </pre>

avatar Ridhoa
@Ridhoa

129 Kontribusi 33 Poin

Dipost 5 tahun yang lalu

Tanggapan

udah saya coba gonta ganti id table dan sesuaiin dengan js id datatablenya tetep ga ngaruh. nyoba pake cdn juga sama

itu sudah ada yg jawab apa sudah di coba? jika belum di coba saja dan sedikit diperbaiki kodingan diphp nya. mulai dari <pre> &lt;td&gt;&lt;?=$no++?&gt;&lt;/td&gt; &lt;td&gt;&lt;?=$data['judul']?&gt;&lt;/td&gt; &lt;td&gt;&lt;?=$data['pengarang']?&gt;&lt;/td&gt; &lt;td&gt;&lt;?=$data['penerbit']?&gt;&lt;/td&gt;

&lt;td&gt;&lt;?=$data['isbn']?&gt;&lt;/td&gt;

&lt;td&gt;&lt;?=$data['jumlah_buku']?&gt;&lt;/td&gt; </pre> itu semua tidak pakai titik koma. dan di <pre> &lt;tr id="data_&lt;=$data['id']?&gt;"&gt; </pre> itu kurang "?" sseharusnya &lt;?= dan juga &lt;table id="example" itu disamakan dengan js nya yg berada difooter

<pre> &lt;script&gt; $(document).ready(function(){ $('.data').DataTable(); // data seharusnya diisi dengan example }); &lt;/script&gt; </pre>

avatar fitridewi
@fitridewi

26 Kontribusi 3 Poin

Dipost 5 tahun yang lalu

Tanggapan

terima kasih atas koreksinya. untuk table id udah saya coba samain juga tidak ada perubahan

$('.data').DataTable(); itu .data nya diganti jadi #data mas sesuaikan sama id nya jangan lupa. pokonya untuk class pakai "." untuk di js nya dan id menggunakan # yg saya tuliskan diatas masih salah hehe

sepertinya permasalahannya ada di cara saya memanggil table dari database, soalnya pas saya ubah dengan table yang datanya tidak diambil dari database, langsung berfungsi. kira2 bagaimana ya?

eh, case closed. kelebihan tag <tr> hahaha. thanks

Login untuk ikut Jawaban