如何使用 AJAX 和 Laravel 高效管理 Select2 中的大型数据集

问题描述 投票:0回答:1

我正在开发一个 Laravel 应用程序,该应用程序需要在 UI 中动态加载选择选项,可能会处理大型数据集。目标是实现自动完成功能,其中根据用户输入过滤选项。我正在考虑分页、搜索方向和活动状态控制等因素,以提高效率和用户体验。

  1. 如何实现大型的分页和偏移处理 数据集?
  2. 有没有办法配置搜索方向(从左到右或 从右到左)基于用户设置?
  3. 我可以根据活动控制哪些选项可用吗
  4. 添加其他查询自定义的最佳实践是什么 具体的应用逻辑? 状态?
  5. 最后,如何确保该解决方案易于重复使用 在我的 Laravel 应用程序中跨不同模型或控制器?
javascript php laravel large-data jquery-select2-4
1个回答
0
投票

嗨,您可以使用此功能通过“select2”进行搜索:

function init_select2_ajax(selector, url, placeholder) {
    placeholder = placeholder || "...";
    url = url || '/';
    $(selector).select2({
        minimumInputLength: 3,
        dir: "rtl",
        width: "100%",
        placeholder: placeholder,
        language: "fa",
        ajax: {
            url: url,
            dataType: "json",
            type: "POST",
            quietMillis: 150,
            data: function (term) {
                return {
                    term: term
                };
            },
            results: function (data) {
                return {
                    results: $.map(data, function (item) {
                        return {
                            text: item.text,
                            id: item.id
                        }
                    })
                };
            }
        }
    });
}
© www.soinside.com 2019 - 2024. All rights reserved.