无法在数据表服务器端处理中进行服务调用

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

 $('#grid').DataTable({
         "processing": true,
         "destroy": true,
         "scrollY": true,
         "scrollX": true,
         "serverSide": true,
         "paging": true,
         "pageLength": 20,
         "lengthChange": false,
         "language": { search: '', searchPlaceholder: "Search..." },

         "ajax":
         {
             "url":'api/Default/EmployeeDetails',
             "contentType": "application/json",
             "type": 'POST',
             "dataType": "json",
             "data": function (d) {
                 debugger;
                 return JSON.stringify(d);
             },
             "dataSrc": function (json) {
                 debugger;
                 //json.draw = json.draw;
                 //json.recordsTotal = json.recordsTotal;
                 //json.recordsFiltered = json.recordsFiltered;
                 //json.data = json.data;

                 var return_data = json;
                 //return return_data.data;
                 var dttt = $.parseJSON(return_data.data);
                 return dttt;
             }
         },
         "columns": [
             {
                 "data": "UserName",
                 "title": "Employee Name"
             },
             {
                 "data": "Password",
                 "title": "Passwords"
             }, ] 

HTML

 Server side
  [HttpPost("EmployeeDetails")]
         public string EmployeeDetails([FromBody] PagingParams data)
         {
             SQLServerConnect connection = new SQLServerConnect();
             string result = JsonConvert.SerializeObject(connection.EmployeeDetails("Employee", data));
             return result;
         }

我无法拨打服务电话。 Ajax调用未初始化。因此,无法进行服务调用以获取数据表的数据。控制台中也没有错误。帮助我。在此先感谢

jquery ajax datatables datatables-1.10
1个回答
0
投票

$('#grid')。DataTable({“处理中”:是,“ destroy”:是的,“ scrollY”:是的,“ scrollX”:是的,“ serverSide”:是的,“分页”:是的,“ pageLength”:20,“ lengthChange”:false,“语言”:{搜索:,searchPlaceholder:“搜索...”},

     "ajax":
     {
         "url":'api/Default/EmployeeDetails',
         "contentType": "application/json",
         "type": 'POST',
         "dataType": "json"
     },
     "columns": [
         {"data": "userName", "title": "Employee Name"},
         {"data": "password","title": "Passwords"}, 
         ] 
      }

    });

    [HttpPost("EmployeeDetails")]
     public string EmployeeDetails()
     {
          var draw = HttpContext.Request.Form["draw"]..ToString();
          var start = Request.Form["start"].ToString();
          var length = Request.Form["length"].ToString();
            var sortColumn = Request.Form["columns[" + Request.Form["order[0][column]"].ToString() + "][name]"].ToString();
            var sortColumnDir = Request.Form["order[0][dir]"].ToString());
            var searchValue = Request.Form["search[value]"].ToString();

          PagingParams data = new PagingParams(){
            PageIndex = Convert.ToInt32(start),
            PageSize = Convert.ToInt32(length),
            SortColumn = sortColumn,
            Direction = sortColumnDir,
            SearchValue = searchValue
          };

         SQLServerConnect connection = new SQLServerConnect();
         var result = connection.EmployeeDetails("Employee", data);

          if (result.Count() > 0)
            {
                recordsTotal = result.FirstOrDefault().TotalRecord.Value;

                var query = result.Select(o => new
                {
                    key = o.Id,
                    o.userName,                       
                    o.password
                });


                return Json(new { draw = draw, recordsFiltered = recordsTotal, recordsTotal = recordsTotal, data = query });
            }
            else
                return Json(new { draw = draw, recordsFiltered = 0, recordsTotal = 0, data = "" });


     }
© www.soinside.com 2019 - 2024. All rights reserved.