0
ich alles ist in Ordnung, außer der Schnellsuche Eingabe nicht filtringDatatable Schnellsuche funktioniert nicht auf Server-Seite
mein Code
$('.DT').each(function()
{
oTable = $(this).DataTable({
"sPaginationType": "bootstrap",
"processing": true,
"serverSide": true,
"orderMulti": true,
"sDom": "<'row separator bottom'<'col-md-5'T><'col-md-3'l><'col-md-4'f>r>t<'row'<'col-md-6'i><'col-md-6'p>>",
"sScrollY": "500px",
"sScrollX": "100%",
"sScrollXInner": "100%",
"bScrollCollapse": true,
"ajax": {
"url": '/Level/LoadData',
"type": "POST"
},
"columns": [
{ "data": "level_description", "name": "level_description", "autoWidth": true }, //index 1
{ "data": "monthly_amount", "name": "monthly_amount", "autoWidth": true }, //index 1
{ "data": "transport_amount", "name": "transport_amount", "autoWidth": true }
]
});
}
meinen Controller
eine Datentabelle mit json in meinem Projekt zu füllen versuchen,public ActionResult LoadData()
{
//jQuery DataTables Param
var draw = Request.Form.GetValues("draw").FirstOrDefault();
//Find paging info
var start = Request.Form.GetValues("start").FirstOrDefault();
var length = Request.Form.GetValues("length").FirstOrDefault();
//Find order columns info
var sortColumn = Request.Form.GetValues("columns[" + Request.Form.GetValues("order[0][column]").FirstOrDefault() + "][name]").FirstOrDefault();
var sortColumnDir = Request.Form.GetValues("order[0][dir]").FirstOrDefault();
int pageSize = length != null ? Convert.ToInt32(length) : 0;
int skip = start != null ? Convert.ToInt16(start) : 0;
int recordsTotal = 0;
var v = (from l in db.level select l);
if (!(string.IsNullOrEmpty(sortColumn) && string.IsNullOrEmpty(sortColumnDir)))
{
v = v.OrderBy(sortColumn + " " + sortColumnDir);
}
recordsTotal = v.Count();
var data = v.Skip(skip).Take(pageSize).ToList();
return Json(new { draw = draw, recordsFiltered = recordsTotal, recordsTotal = recordsTotal, data = data }, JsonRequestBehavior.AllowGet);
}
ich denke nicht, dass, wenn ich Server-Seite die schnellen serch verwenden werden nicht funktionieren ich weiß nicht, ob ich etwas verpaßt
gibt es eine andere Lösung, weil ich viele Tabellen und fo jeder von ihnen Ich habe viele Felder –
Sie eine Linq-Abfrage schreiben und Nutzung verbindet die Daten aus vielen Tabellen –
var zu bekommen v = (von l in db.level wähle l); \t Sie können eine Linq-Abfrage schreiben und Joins verwenden, um die Daten aus vielen Tabellen zu erhalten, wie Sie oben für eine einzelne Tabelle –