簡體   English   中英

如何在ASP.Net MVC中捕獲jquery datatable服務器端數據源參數

[英]how to catch jquery datatable server side data source parameters in ASP.Net MVC

我在我的ASP.Net MVC應用程序中使用jQuery Datatable服務器端處理作為數據源。 我需要在查詢中應用搜索字詞,但我不知道如何捕捉它。

這是我的控制器的簡短版本:

public JsonResult Index(POFilter m) {
   return Json(new {
      data = data,
      ...
   })
}

POFilter.cs

public class POFilter
{
    public int start { get; set; }
    public int length { get; set; }
    public int draw { get; set; }
    public List<DT_Order> order { get; set; }
    public string[] search { get; set; }

    public POFilter()
    {
        start = 0;
        length = 10;
        draw = 1;
    }
}

public class DT_Order
{
    public int column { get; set; }
    public string dir { get; set; }
}

但由於某種原因, search property始終為null。 您可以看到jquery datatable傳遞的參數:

order[0][column]:0
order[0][dir]:desc
start:0
length:10
search[value]:my search term
search[regex]:false

如何從傳遞的參數中獲取my search term

我正在使用一個對象來保存搜索結果。 而不是使用:

public string[] search { get; set; }

我用:

public DataTableSearch Search { get; set; }

其中DataTableSearch定義為:

public class DataTableSearch
{
    public string Value { get; set; }
    public string Regex { get; set; }
}

讓我知道這是否不能解決您的問題(如果您仍然有問題)。

使用datatables.mvc5 nuget包獲取鍵入的modelbinder:

public JsonResult GetData([ModelBinder(typeof(DataTablesBinder))] IDataTablesRequest requestModel)
{
    // requestModel.Start..
    // requestModel.Length..
    // requestModel.Columns..
}

看一下這個項目,它是一個由朋友制作的MVC / Jquery數據表實現。 我幾乎在所有項目中都使用了

https://github.com/amoerie/generic-datatables

實施起來有點困難,但是一旦安裝到位,就很容易使用

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM