Saya memiliki masalah dengan Datatables
. Saya juga melalui tautan ini yang tidak membuahkan hasil apa pun. Saya telah memasukkan semua prasyarat di mana saya mem-parsing data langsung ke DOM. Mohon bantu saya untuk memperbaiki masalah ini.
Naskah
$(document).ready(function() {
$('.viewCentricPage .teamCentric').dataTable({
"bJQueryUI": true,
"sPaginationType": "full_numbers",
"bPaginate": false,
"bFilter": true,
"bSort": true,
"aaSorting": [
[1, "asc"]
],
"aoColumnDefs": [{
"bSortable": false,
"aTargets": [0]
}, {
"bSortable": true,
"aTargets": [1]
}, {
"bSortable": false,
"aTargets": [2]
}],
});
});
jquery
console
datatables
Thriveni
sumber
sumber
Jawaban:
FYI DataTables membutuhkan meja terbentuk dengan baik. Itu harus berisi
<thead>
dan memberi<tbody>
tag, jika tidak maka akan menimbulkan kesalahan ini. Juga periksa untuk memastikan semua baris Anda termasuk baris tajuk memiliki jumlah kolom yang sama.Berikut ini akan menimbulkan kesalahan (tidak
<thead>
dan<tbody>
tag)Berikut ini juga akan menimbulkan kesalahan (jumlah kolom yang tidak sama)
Untuk info lebih lanjut, baca lebih lanjut di sini
sumber
Penyebab umum
Cannot read property 'fnSetData' of undefined
adalah jumlah kolom yang tidak cocok, seperti dalam kode yang salah ini:Sementara kode berikut dengan satu
<th>
per<td>
(jumlah kolom harus cocok) berfungsi:Kesalahan juga muncul saat menggunakan thead yang terbentuk dengan baik dengan colspan tetapi tanpa baris kedua.
Untuk tabel dengan 7 kolom, berikut ini tidak berfungsi dan kita melihat "Tidak dapat membaca properti 'mData' dari undefined" di konsol javascript:
Sementara ini bekerja:
sumber
tr
digunakan untuk melampirkan semuath
elemen. Hanya meninggalkannya di sini kalau-kalau ada yang menemukan ini berguna!th
kolom di kolom sayathead
, yang menyebabkan kesalahan. Jawaban oleh Nathan Hanna juga sepertinya mengindikasikan masalah ini juga.th
di sayathead
juga!colspan
interpretasi selama empat tahun masih menjadi masalah. Saya harus memasukkan beberapa kosongth
dan tidakcolspan
untuk menyingkirkan kesalahan. Tetapi apa yang sederhana menambahkan untuk mendapatkan fungsi ini. BTW: Rails 5.1.5, Bootstrap 4.0.0. Saya baru saja menambahkan stylesheet dan skrip CDNs, dan$(document).ready…
ke halaman.Saya punya masalah yang sama menggunakan data DOM dalam tampilan Rails yang dibuat melalui generator scaffold. Secara default, tampilan menghilangkan
<th>
elemen untuk tiga kolom terakhir (yang berisi tautan untuk menampilkan, menyembunyikan, dan memusnahkan catatan). Saya menemukan bahwa jika saya menambahkan judul untuk kolom-kolom itu dalam<th>
elemen di dalam<thead>
yang sudah diperbaiki masalahnya.Saya tidak bisa mengatakan apakah ini masalah yang sama dengan yang Anda alami karena saya tidak dapat melihat html Anda. Jika itu bukan masalah yang sama, Anda dapat menggunakan debugger krom untuk mencari tahu kolom mana yang membuat kesalahan dengan mengklik pada kesalahan di konsol (yang akan membawa Anda ke kode itu gagal), kemudian menambahkan sebuah kondisional breakpoint (at
col==undefined
). Ketika berhenti, Anda dapat memeriksa variabeli
untuk melihat kolom mana saat ini yang dapat membantu Anda mencari tahu apa yang berbeda dari kolom itu dari yang lain. Semoga itu bisa membantu!sumber
colspan="3"
tetapi saya mendapatkan kesalahan (itulah sebabnya saya berakhir di halaman ini). Saya sedikit mengotak-atik, tetapi akhirnya menyerah dan menciptakan tigath
elemen dan dengan yang pertama "Detail" dan membiarkan dua yang terakhir kosong. Mengotak-atik menyarankan bahwa dataTables memiliki masalah dengan colspan sebagai yang terakhir dalam seri. Perbaikan OP aneh karena jumlah kolom tidak bertambah. Saya tidak memiliki kondisi di atas meja, sepertiorder
atausortable
. Saya menambahkannya setelah berhasil.Memiliki
<thead>
dan<tbody>
dengan jumlah yang sama<th>
dan<td>
memecahkan masalah saya.sumber
Ini juga dapat terjadi jika Anda memiliki argumen tabel untuk hal-hal seperti
'aoColumns':[..]
yang tidak cocok dengan jumlah kolom yang benar. Masalah seperti ini biasanya dapat terjadi ketika menyalin kode paste dari halaman lain untuk memulai dengan cepat integrasi datatables Anda.Contoh:
Ini tidak akan berfungsi:
Tetapi ini akan berhasil:
sumber
Satu lagi alasan mengapa ini terjadi adalah karena parameter kolom dalam inisialisasi DataTable.
Jumlah kolom harus sesuai dengan header
Saya punya 7 kolom
sumber
Anda harus menghapus
colspan
dan jumlahth
dantd
kebutuhan untuk mencocokkan.sumber
Kiat 1:
Lihat Tautan ini Anda mendapatkan beberapa Ide:
https://datatables.net/forums/discussion/20273/uncaught-typeerror-cannot-read-property-mdata-of-undefined
Kiat 2:
<thead></thead>
&<tbody></tbody>
tagstyle='display:none'
sebagai propery yang sama berlaku di dalam kamu baik header & tubuh.<td>, <tr>
masalahsumber
dalam kasus saya kesalahan ini terjadi jika saya menggunakan tabel tanpa header
sumber
Saya menghadapi kesalahan yang sama, ketika mencoba menambahkan colspan ke th terakhir
dan menyelesaikannya dengan menambahkan kolom tersembunyi ke ujung tr
Penjelasan untuk itu adalah bahwa untuk beberapa alasan DataTable tidak dapat diterapkan ke tabel dengan colspan di yang terakhir, tetapi dapat diterapkan, jika colspan digunakan di tengah mana pun.
Solusi ini agak hacky, tetapi lebih sederhana dan lebih pendek daripada solusi lain yang saya temukan.
Saya harap itu akan membantu seseorang.
sumber
Masalah yang sedikit berbeda bagi saya dari jawaban yang diberikan di atas. Bagi saya, markup HTML baik-baik saja, tetapi salah satu kolom saya di javascript hilang dan tidak cocok dengan html.
yaitu
Skrip Saya: -
sumber
Saya memiliki tabel yang dihasilkan secara dinamis, tetapi bentuknya buruk dengan salah ketik. Saya menyalin
<td>
tag di dalam tag lain<td>
karena kesalahan. Jumlah kolom saya cocok. Saya punya<thead>
dan<tbody>
tag. Semuanya cocok, kecuali untuk kesalahan kecil ini yang tidak saya perhatikan untuk sementara waktu, karena kolom saya memiliki banyak tautan dan tag gambar di dalamnya.sumber
Saya telah mengalami masalah yang sama tetapi saya menghasilkan tabel secara dinamis . Dalam kasus saya, meja saya hilang
<thead>
dan<tbody>
ditandai.di sini adalah potongan kode saya jika itu membantu seseorang
sumber
Selain nomor dan tidak konsisten, item yang hilang di dalam bagian kolom skrip yang dapat didaftarkan juga dapat menyebabkan hal ini. Memperbaiki yang memperbaiki bilah pencarian datatables saya.
Saya berbicara tentang bagian ini;
Saya berjuang dengan kesalahan ini sampai saya ditunjukkan bahwa bagian ini memiliki satu kurang "nol" dari jumlah total thead saya.
sumber
Yang ini membuatku gila - bagaimana membuat DataTable berhasil dalam tampilan .NET MVC. Ini berhasil:
Script dalam file JS:
sumber
Dalam kasus saya, dan menggunakan ASP.NET GridView, UpdatePanel dan dengan DropDownList (dengan plugin Pilihan di mana saya mereset nilai ke nol menggunakan garis Javascript), saya mendapatkan kesalahan ini dan mencoba semuanya tanpa harapan selama berhari-hari. Masalahnya adalah bahwa kode dropdown saya dalam kode di belakang adalah sebagai berikut dan ketika saya memilih nilai dua kali untuk menerapkan aksinya pada baris grid yang dipilih saya mendapatkan kesalahan itu. Saya pikir berhari-hari ini adalah masalah Javascript (sekali lagi, dalam kasus saya) dan akhirnya perbaikannya memberikan nol untuk nilai drowpdown dengan proses pembaruan:
Ini salah saya:
sumber
Anda perlu membungkus baris Anda
<thead>
untuk header kolom dan<tbody>
untuk baris. Pastikan juga Anda tidak mencocokkan no. header kolom<th>
seperti yang Anda lakukan untuktd
sumber
Saya mungkin muncul oleh bidang aoColumns. Seperti yang dinyatakan DI SINI
Maka Anda harus menambahkan bidang seperti pada tabel Kolom
sumber
dalam kasus saya penyebab kesalahan ini adalah saya memiliki 2 tabel yang memiliki nama id yang sama dengan struktur tabel yang berbeda, karena kebiasaan saya menyalin-tempel kode tabel. pastikan Anda memiliki id berbeda untuk setiap tabel.
sumber
Saya menemukan beberapa "solusi".
Kode ini tidak berfungsi:
Tapi ini ok:
Saya pikir, masalahnya adalah, bahwa TH terakhir tidak dapat memiliki atribut colspan.
sumber