DataTables Custom filter Ajax
Просьба, подсказать, как корректно передать значения из кастомных полей на серверную часть посредством Ajax DataTables
основной скрипт для формирования таблицы:
<script>
$(document).ready(function() {
var empDataTable = $('#table').DataTable({
'processing': true,
'serverSide': true,
'serverMethod': 'post',
'ajax': {
'url':'/file',
"data": function ( d ) {
return $.extend( {}, d, {
"choice": $("#selected_volume").val(),
} );
}},
'lengthMenu': [[5, 10, 25, 50, -1], [5, 10, 25, 50, "All"]],
searching: false,
sort: false,
'columns': [
{ data: 'country' },
{ data: 'brand' },
{ data: 'volume' },
]
});
});
</script>
соответсвенно костомное поле:
<script type="text/javascript">
$(document).ready(function() {
$('#selected_volume').dropdown();
});
</script>
пытался передать значения через данный блок, к сожалению, попытки не увенчались успехом
'ajax': {
'url':'/file',
"data": function ( d ) {
return $.extend( {}, d, {
"choice": $("#selected_volume").val(),
} );
}}
Ответы (1 шт):
Автор решения: xcplat
→ Ссылка
рабочий вариант в моем случае оказался следующим:
'ajax': {
'url':'/file',
"data": function ( d ) {
return $.extend( {}, d, {
'volume': $('#selected_volume').val(),
'brand': $('#selected_brand').val(),
'country': $('#selected_country').val()
} );
}
},
oTable = $('#table_hlr').DataTable();
$('#selected_volume').change(function (e) {
oTable.draw();
});
oTable = $('#table_hlr').DataTable();
$('#selected_brand').change(function (e) {
oTable.draw();
});
oTable = $('#table_hlr').DataTable();
$('#selected_country').change(function (e) {
oTable.draw();
});