membuat baris baru dengan java script

Saya coba membuat tabel dengan tujuan setiap klik add baris selalu nambah barisnya pada tatapi tabel tersebut namun pass saya cek di console chrome ada error seperti berikut:

Uncaught ReferenceError: $ is not defined at table.js:31:1

dengan script seperti berikut:

function Barisbaru(){ var Nomor = $("#tableLoop tbody tr").length + 1; var Baris = '<tr>'; Baris += '<td class="text-center">'+Nomor+'</td>'; Baris += '<td>'; Baris += '<select class="form-control" name="kode_akun3[]" id="kode_akun3'+Nomor+'" required> </select>'; Baris += '</td>'; Baris += '<td>'; Baris += '<input type="number" name="debit[]" class="form-control" placeholder="Debit....." required>'; Baris += '</td>'; Baris += '<td>'; Baris += '<<input type="number" name="kredit[]" class="form-control" placeholder="Kredit....." required>'; Baris += '</td>'; Baris += '<td>'; Baris += '<select class="form-control" name="id_status[]" id="id_status'+Nomor+'" required> </select>'; Baris += '</td>'; Baris += '<td class="text-center">'; Baris += '<a class="btn btn-sm btn-outline-danger" title="Hapus Baris" id="HapusBaris"><i class="fa-solid fa-trash-can"></i></a>'; Baris += '</td>'; Baris += '</tr>';

    $(&quot;#tableLoop tbody&quot;).append(Baris);
    $(&quot;#tableLoop tbody tr&quot;).each(function(){
        $(this).find(&#039;td:nth-child(2) input&#039;).focus();
    });

FormSelectAkun(Nomor);
FormSelectStatus(Nomor);

}

$(document).ready(function(){ var A; for (A =1; A<=1; A++){ Barisbaru(); } $('#BarisBaru').click(function(e){ e.preventDefault(); Barisbaru(); }); $("tableLoop tbody").find('input[type=text]').filter(':visible:first').focus(); });

$(document).on('click','#HapusBaris', function(e){ e.preventDefault(); var Nomor = 1; $(this).parent().remove(); $('tableLoop tbody tr').each(function(){ $(this).find('td:nth-child(1)').html(Nomor); Nomor++; }); });

function FormSelectAkun(Nomor){ var output = []; output.push('<option value="">- Pilih Data -</option>'); $.getJSON('/Transaksi/akun3', function(data){ $.each(data, function(key, value){ output.push('<option value="' + value.kode_akun3 +'">'+value.kode_akun3+'|'+value.nama_akun3+'|'+value.nama_akun3+'</option>') }); $('#kode_akun3' + Nomor).html(output.join('')); }); }

function FormSelectStatus(Nomor){ var output = []; output.push('<option value="">- Pilih Data -</option>'); $.getJSON('/Transaksi/status', function(data){ $.each(data, function(key, value){ output.push('<option value="' + value.id_status +'">'+value.status+'</option>') }); $('#id_status' + Nomor).html(output.join('')); }); }

untuk link ke file trsebut : <script type="text/javascript" src="<?= base_url('assets'); ?>/js/table.js"></script>

Mohon pencerahannya saya menggunakan CI4 dan

avatar opikgandring85
@opikgandring85

30 Kontribusi 1 Poin

Diperbarui 10 bulan yang lalu

1 Jawaban:

Error Uncaught ReferenceError: $ is not defined biasanya terjadi ketika Anda mencoba menggunakan jQuery sebelum library jQuery dimuat. Dalam hal ini, tampaknya Anda mencoba menggunakan jQuery di file table.js Anda, tetapi jQuery belum dimuat pada saat itu.

  1. Pastikan jQuery Dimuat Sebelum File JavaScript Anda: Anda harus memastikan bahwa file jQuery dimuat sebelum file JavaScript Anda. Anda dapat melakukan ini dengan memindahkan tag script yang merujuk ke file jQuery Anda ke bagian atas dokumen HTML Anda, sebelum tag script lainnya.

  2. Cek Urutan Pemuatan File JavaScript: Jika Anda memiliki beberapa file JavaScript dan beberapa di antaranya bergantung pada yang lain (misalnya, file JavaScript Anda bergantung pada jQuery), Anda harus memastikan bahwa mereka dimuat dalam urutan yang benar.

  3. Cek Versi jQuery: Pastikan Anda menggunakan versi jQuery yang kompatibel dengan kode Anda.

Berikut adalah contoh bagaimana Anda bisa melakukannya:

<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.5.1/jquery.min.js"></script>
<script src="<?= base_url('assets'); ?>/js/table.js"></script>

Dalam contoh di atas, jQuery dimuat sebelum file table.js. Dengan demikian, ketika browser mencoba menjalankan kode dalam table.js, jQuery sudah tersedia

avatar adamajalah27
@adamajalah27

119 Kontribusi 40 Poin

Dipost 10 bulan yang lalu

Login untuk ikut Jawaban