/ / Datatables с ajax и js променлива в данните не се разпространява - jquery, ajax, datatable

Datatables с ajax и js променливи в данните не се разпространяват - jquery, ajax, datatable

Използвам таблици с данни и данните се зареждат с AJAX с персонализирани данни но на променливата за референция на персонализирани данни се променя и ajax се презарежда стойността на персонализираните данни не се променя

 var range=1;
var DataTable=$("#tableid_table").DataTable( {
"lengthMenu": [[10,25,50,100, -1], [10,25,50,100, "All"]],
"processing": true,
"serverSide": true,
"ajax":{ url:"phpqueryfile.php",type: "POST",dataType: "json","data": {
"range": select
}}
} );

$(".range").click(function () {
alert($(this).attr("value"));
select=$(this).attr("value");
DataTable.ajax.reload();

})

когато се извика щракване на диапазон и диапазонът се променя на всяка друга стойност, ajax се презарежда с обхват = 1

Редактиране: Успях да изпратя данни след промяна

var select=1;
var DataTable=$("#mygradedcalls_table").DataTable( {

"lengthMenu": [[10,25,50,100, -1], [10,25,50,100, "All"]],
"processing": true,
"serverSide": true,
"ajax":{ url:"../Queries_PHP/grad/getAllMyGradedCalls.php",type: "POST",dataType: "json",data:function (range) {
Object.assign(range, select);
return range;
}
}
} );

$(".range").click(function () {
select=$(this).attr("value");
DataTable.ajax.reload();
})

има два въпроса 1. при първо зареждане на данни не се изпращат персонализирани данни 2. когато се изпращат персонализирани данни, името на променливата е "0" и стойността е избраната стойност, която е правилна, но как да промените името на променливата

Отговори:

0 за отговор № 1

Успях да го накарам да работи по следния начин

var select=1;
var DataTable=$("#mygradedcalls_table").DataTable( {

"lengthMenu": [[10,25,50,100, -1], [10,25,50,100, "All"]],
"processing": true,
"serverSide": true,
"ajax":{ url:"../Queries_PHP/grad/getAllMyGradedCalls.php",type: "POST",dataType: "json",data:function (d) {
d.range = select;
}
}
} );

$(".range").click(function () {
select=$(this).attr("value");
DataTable.ajax.reload();
})