【问题标题】:Using Select with datatables column filtering and MVC Server Side Processing将 Select 与数据表列过滤和 MVC 服务器端处理一起使用
【发布时间】:2012-05-30 09:50:04
【问题描述】:

我一直在使用 JQuery 插件数据表和 .NET MVC3 框架开发一个项目。我正在使用 AJAX 控制器进行服务器端处理。我也一直在使用“columnfiltering”数据表插件来进行单独的列过滤。它适用于文本输入和数字范围。我在选择时遇到问题。我可以显示一个选择字段,我什至知道如何以这种方式为其提供特定选项

 $('#example').dataTable()
      .columnFilter({
        aoColumns: [ { type: "select", values: [ 'Gecko', 'Trident', 'KHTML', 'Misc', 'Presto', 'Webkit', 'Tasman']  }
    });

但我希望从表中的数据中自动填充选择。有什么方法可以做到这一点,我知道我可以创建另一个 ajax 控制器并使用 JQuery 来访问该控制器以提供我想要的数据,但我更愿意将它包装到我已经拥有的表控制器中。谢谢!

【问题讨论】:

    标签: ajax asp.net-mvc datatables


    【解决方案1】:

    如果你像这样从 MVC 控制器返回 json,你可以使用 fnServerParams:

    return Json(new
    {
        param.sEcho,
        iTotalRecords = baseqry.TotalRecordCount,
        iTotalDisplayRecords = baseqry.TotalRecordCount,
        aaData = result,
        selectListData = MySelectlistData
    }, JsonRequestBehavior.AllowGet);
    

    其中aaData 是要填充数据表的数据,selectListData 是选择列表的数据。

    在数据表初始化代码中,您会得到 selectListData 的值,如下所示:

    "fnServerData": function (sSource, aoData, fnCallback) {
        $.getJSON(sSource, aoData, function (json) {
            var selectlist = json.selectListData;
        }
        fnCallback(json); // this call populates the datatable
    });
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2015-11-24
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-11-18
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多