Jquery数据表使用render进行过滤

时间:2016-06-10 08:38:14

标签: jquery datatable server-side

我使用datatables服务器端,当我想使用列过滤器搜索服务器端数据时遇到问题,因为渲染值与数据库字段值不匹配。例如:在我的数据库中,状态列中有0和1。在我的数据表中,我使用渲染显示状态列以获取此信息:如果status = 0,那么我将显示已禁用,如果我有1个I&#l; ll显示已启用。

以下是我的代码片段:

package com.foxastudios.stopnosocomials.Fragments;

public class FragmentObserveeOne extends Fragment {

    @BindView(R.id.text_obs_one_name) TextView obsName;

    public FragmentObserveeOne() {
        // Required empty public constructor
    }


    @Override
    public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {
        View rootView =  inflater.inflate(R.layout.fragment_observee_one, container, false);
        ButterKnife.bind(this,rootView);

        obsName.setText("TEXT");

        return rootView;
    }

}

您知道如何将渲染值与服务器端值匹配吗?

1 个答案:

答案 0 :(得分:0)

您可以将列的名称传递给服务器:

$('#historyTable').DataTable({
    dom: "t<'col-sm-5'i><'col-sm-7'p>",
    autoWidth: true,
    aaSorting: [[1, 'asc']],
    serverSide: true,
    lengthChange: false,
    ajax: {
        url: 'history',
        method: 'POST'
    }
    columns: [
        {data: "id", name: "column1_name"},
        {data: "name", orderData: [ 1, 0 ], name: "column2_name"},
        {data: "status", render: renderStatus, orderData: [ 2, 0 ], name: "column3_name"}
    ]
});

我不知道如何动态设置名称。

相关问题