почему поиск по умолчанию не работает в таблицах данных - PullRequest
0 голосов
/ 15 апреля 2020

Я использую Datatables в своем проекте Asp. net MVC, я хочу использовать функцию поиска по умолчанию, но почему-то она не работает, кто-нибудь может мне помочь

Вот мой js код

var oTable = $('#Tbl').DataTable({
            serverSide: true,
            searching: true,
            "bFilter": true, 
            ajax: {
                "type": "POST",
                "url": '@Url.Action("MethodName")',
                "contentType": 'application/json; charset=utf-8',
                'data': function (data) {
                    return data = JSON.stringify(data);
                }
            },
            processing: true,
            paging: true,
            pagingType: "full_numbers",
            deferRender: true,

            columns: [
                { data: "ID"},
                { data: "Tostr"},
                { data: "CName"},
                { data: "SName" },
                { data: "STName" },
                { data: "Mail" },
                { data: "PNumber"},
                { data: "Query" },
                { data: "Instr" },                
                { data: "Persons"},
                { data: "Quantity" },


            ],
            columnDefs: [{
                'targets': 11,
                'searchable': false,
                'orderable': false,
                'bSortable': false,
                'render': function (data, type, full, meta) {
                    return '';
                }
            },
            {
                targets: 'no-sort',
                orderable: false
            }]
        });
    });

Вот код контроллера

publi c Имя метода JsonResult (параметры DTParameters) {var columnSearch = parameters.Columns.Select (s => s.Search.Value). Take (Columns.Count ()). ToList ();

        var sql = new PetaPoco.Sql($"Query");


        sql.Append($"{GetWhereWithOrClauseFromColumns(Columns, columnSearch)} Order By ID Desc ");

        try
        {
            var res = db.Query<T>(sql).Skip(parameters.Start).Take(parameters.Length).ToList();


            var dataTableResult = new DTResult<T>
            {
                draw = parameters.Draw,
                data = res,
                recordsFiltered = 10,
                recordsTotal = res.Count()
            };

            return Json(dataTableResult, JsonRequestBehavior.AllowGet);
        }
        catch (Exception ex)
        {

            throw ex;
        }
    }
...