-
Anonymous
Как устранить ошибку «oTable.draw не является функцией» при фильтрации таблиц данных?
Сообщение
Anonymous »
У меня есть форма поиска над таблицами данных. Когда я пытаюсь выполнить поиск, я получаю данные в формате JSON, без фильтрации таблиц данных. Ошибка:
Неперехваченная ошибка типа: oTable.draw не является функцией
Вот JavaScript:
Код: Выделить всё
$(document).ready(function(){
var oTable = $('#surat').DataTable({
processing: true,
serverSide: true,
ajax: {
url: '{!! route("surat") !!}',
data: function (d) {
d.jenis_surat = $('input[name=jenis_surat]').val();
d.nomor_surat = $('input[name=nomor_surat]').val();
d.perihal = $('input[name=perihal]').val();
}
},
columns: [
{data: 'no', name: 'no'},
{data: 'jenis_surat', name: 'jenis_surat'},
{data: 'nomor_surat', name: 'nomor_surat'},
{data: 'perihal', name: 'perihal'},
{data: 'status', name: 'status'}
]
});
$('#search_form').on('submit', function(e) {
oTable.draw();
e.preventDefault();
});
});
А это контроллер:
Код: Выделить всё
public function carisuratdata(Request $request)
{
$surats = Surat::select(['id_surat', 'id_jenis_surat', 'nomor_surat','perihal', 'tanggal_surat', 'masa_berlaku_from', 'masa_berlaku_to', 'ringkasan', 'tag', 'id_publish', 'tanggal_publish'])->get();
return Datatables::of($surats)
->filter(function ($instance) use ($request) {
if ($request->has('jenis_surat')) {
$instance->collection = $instance->collection->filter(function ($row) use ($request) {
return Str::contains($row['jenis_surat'], $request->get('jenis_surat')) ? true : false;
});
}
if ($request->has('nomor_surat')) {
$instance->collection = $instance->collection->filter(function ($row) use ($request) {
return Str::contains($row['nomor_surat'], $request->get('nomor_surat')) ? true : false;
});
}
if ($request->has('perihal')) {
$instance->collection = $instance->collection->filter(function ($row) use ($request) {
return Str::contains($row['perihal'], $request->get('perihal')) ? true : false;
});
}
})
->make(true);
}
Вот JSON:
Подробнее здесь:
https://stackoverflow.com/questions/371 ... datatables
1764087060
Anonymous
У меня есть форма поиска над таблицами данных. Когда я пытаюсь выполнить поиск, я получаю данные в формате JSON, без фильтрации таблиц данных. Ошибка:
Неперехваченная ошибка типа: oTable.draw не является функцией
Вот JavaScript:
[code]$(document).ready(function(){
var oTable = $('#surat').DataTable({
processing: true,
serverSide: true,
ajax: {
url: '{!! route("surat") !!}',
data: function (d) {
d.jenis_surat = $('input[name=jenis_surat]').val();
d.nomor_surat = $('input[name=nomor_surat]').val();
d.perihal = $('input[name=perihal]').val();
}
},
columns: [
{data: 'no', name: 'no'},
{data: 'jenis_surat', name: 'jenis_surat'},
{data: 'nomor_surat', name: 'nomor_surat'},
{data: 'perihal', name: 'perihal'},
{data: 'status', name: 'status'}
]
});
$('#search_form').on('submit', function(e) {
oTable.draw();
e.preventDefault();
});
});
[/code]
А это контроллер:
[code]public function carisuratdata(Request $request)
{
$surats = Surat::select(['id_surat', 'id_jenis_surat', 'nomor_surat','perihal', 'tanggal_surat', 'masa_berlaku_from', 'masa_berlaku_to', 'ringkasan', 'tag', 'id_publish', 'tanggal_publish'])->get();
return Datatables::of($surats)
->filter(function ($instance) use ($request) {
if ($request->has('jenis_surat')) {
$instance->collection = $instance->collection->filter(function ($row) use ($request) {
return Str::contains($row['jenis_surat'], $request->get('jenis_surat')) ? true : false;
});
}
if ($request->has('nomor_surat')) {
$instance->collection = $instance->collection->filter(function ($row) use ($request) {
return Str::contains($row['nomor_surat'], $request->get('nomor_surat')) ? true : false;
});
}
if ($request->has('perihal')) {
$instance->collection = $instance->collection->filter(function ($row) use ($request) {
return Str::contains($row['perihal'], $request->get('perihal')) ? true : false;
});
}
})
->make(true);
}
[/code]
Вот JSON:
[img]https://i.sstatic.net/Hdu3N.png[/img]
Подробнее здесь: [url]https://stackoverflow.com/questions/37107038/how-to-solve-an-error-otable-draw-is-not-a-function-in-filtering-datatables[/url]