我使用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;
}
}
您知道如何将渲染值与服务器端值匹配吗?
答案 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"}
]
});
我不知道如何动态设置名称。