【发布时间】:2020-05-05 03:47:06
【问题描述】:
我正在使用数据表,我面临着一个非常奇怪的情况。数据需要很长时间才能出现,尤其是在记录非常大的情况下。 我没有使用 Yajra,也没有寻找在 laravel 中使用它,数据表一切都很好,但这是我现在面临的问题,有什么解决方案可以快速处理数据吗?我知道我可能必须使用分页,但是没有 ajax 的分页是一个大问题,特别是在数据表中的搜索 希望你有解决这个问题的办法
控制器:
public function index()
{
$data = User::all();
return view('managedashboard.ownerdashboard.allcustomers.archive', compact('data'));
}
数据表:
TableDatatablesEditable = function() {
var e = function() {
var e = $("#sample_1"),
t = e.dataTable({
dom: "Bfrtip",
buttons: [{
extend: "print",
exportOptions: {
columns: ['.export'],
},
className: "btn dark btn-outline"
}, {
extend: "pdf",
exportOptions: {
columns: ['.export'],
},
className: "btn green btn-outline"
}, {
extend: 'csvHtml5',
exportOptions: {
columns: ['.export'],
},
className: "btn-outline"
}],
language: {
lengthMenu: " _MENU_ records"
},
columnDefs: [{
orderable: !0,
targets: [0]
}, {
searchable: !0,
targets: [0]
}],
order: [
[2, "desc"]
],
lengthMenu: [
[5, 10, 15, 20, -1],
[5, 10, 15, 20, "All"]
],
pageLength: 20,
dom: "<'row' <'col-md-12'B>><'row'<'col-md-6 col-sm-12'l><'col-md-6 col-sm-12'f>r><'table-scrollable't><'row'<'col-md-5 col-sm-12'i><'col-md-7 col-sm-12'p>>"
});
$("#sample_editable_1_wrapper");
e.on("click", ".delete", function(e) {
e.preventDefault();
var a = $(this).parents("tr")[0],
l = $(this).closest("tr").attr("id"),
n = {
_token: $("input[name='_token']").val()
};
n = jQuery.param(n), BootstrapDialog.confirm("Are you sure?", function(e) {
if (e) {
var o = n,
r = "/" + locationUrl[3]+"/"+locationUrl[4] + "/" + l;
ajaxCall("DELETE", r, o, "result", "", !1, "delete"), t.fnDeleteRow(a)
}
})
})
};
return {
init: function() {
e()
}
}
}();
jQuery(document).ready(function() {
TableDatatablesEditable.init()
});
php jquery ajax 数据集
【问题讨论】:
-
为什么不分页而不是全部加载?
-
尝试服务器端数据表,这将提供数据表的所有功能。或者尝试添加分页,因为@phong 已经在那里评论
-
@GorkhaliKhadka 你能告诉我该怎么做吗?
-
@Phong 因为我想在所有记录的数据表中使用 serach ajax 时在同一页面中
标签: php jquery laravel datatable