2

我正在使用版本 1.10.12 的 jquery 数据表。我正在使用下拉列表来过滤数据表中的行。我有以 json 形式返回数据的服务器端点(感谢yajrabox for laravel)。我的问题是如何将新数据加载到现有实例中 这是我的代码

var candidateDT = $("#candidates").DataTable({
            processing: true,
            serverSide: true,
            ajax: '{!! url("/admin/candidates") !!}',
        });

$(".filters").on('click', function(){
            var url = '{{ url("admin/candidates/filters") }}';
            var filterby = $(this).data('filter-by');
            var value = $(this).val();
            if(value !== ""){
                $.ajax({
                    url:url,
                    data: {'filterby':filterby, 'value':value},
                    success: function(response) {
                        candidateDT.clear();
                        candidateDT.reload();
                    }
                });
            }
        });

其中 url 是我的数据源端点,而过滤器是我的下拉列表 在此先感谢

4

1 回答 1

1

使用 Ajax,您可以发送更多参数以从后端访问。所以你可以尝试以下方式:

$("#candidates").DataTable({
    processing: true,
    serverSide: true,
    ajax: {
        url: '{!! url("/admin/candidates") !!}',
        type: "get",
        data: function(f) {
            f.varname = $("#field").val(); //here place
        }
    },
});
于 2018-01-23T06:06:19.433 回答