如何解决KTDatatables - 在具有模板的列中搜索
我正在尝试使用搜索下拉菜单,但如果它搜索包含模板的列,它似乎不起作用。还尝试了 select 以外的其他类型的输入,但仍然无济于事。我一直在尝试复制演示文件正在做的事情,但仍然失败,控制台没有任何错误。
这是我的尝试:
$('#dashboard_import_shipments').KTDatatable({
// snipped data
columns: [
{
field: "status",title: "Status",template: function(t) {
var a = {
1: {
title: "In-Transit",class: " label-primary"
},2: {
title: "Docked",class: " label-warning"
},3: {
title: "For GR# Processing",class: " label-light-success"
},4: {
title: "Completed",class: " label-success"
},5: {
title: "Cancelled",class: " label-danger"
}
};
return '<span class="label font-weight-bold label-lg ' + a[t.status].class + ' label-inline">' + a[t.status].title + "</span>"
}
},]
}),$("#search_shipment_status").on("change",(function() {
dashboardImportShipments.search($(this).val(),"status");
}))
}
};
<select id="search_shipment_status" class="form-control selectpicker" title="Select Status">
<option value="1">In-Transit</option>
<option value="2">Docked</option>
<option value="3">For GR# Processing</option>
<option value="4">Completed</option>
<option value="5">Cancelled</option>
</select>
解决方法
您需要定义 var dashboardImportShipments 在示例中,他们使用 datatable 作为变量,然后在搜索中使用它
var datatable = $('#kt_datatable').KTDatatable({...})
然后
$('#kt_datatable_search_type').on('change',function() {
datatable.search($(this).val().toLowerCase(),'Type');
});
所以应该是:
let dashboardImportShipments = $('#dashboard_import_shipments').KTDatatable({..})
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。