/ / Les tables de données avec les variables ajax et js dans les données ne se propagent pas - jquery, ajax, datatable

Les données avec les variables ajax et js dans les données ne se propagent pas - jquery, ajax, datatable

J'utilise des tables de données et les données sont chargées avec AJAX avec des données personnalisées mais la variable de réfrence des données personnalisées est modifiée et ajax est rechargé, la valeur des données personnalisées n'est pas modifiée

 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();

})

lorsque le clic de plage est appelé et que la plage est remplacée par toute autre valeur, ajax est rechargé avec plage = 1

Edit: j'ai réussi à envoyer des données après avoir changé

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();
})

il y a deux problèmes 1. première fois que la table de données est chargée, aucune donnée personnalisée n'est envoyée 2. lorsque des données personnalisées sont envoyées, le nom de la variable est "0" et la valeur est la valeur de sélection qui est correcte mais comment changer le nom de la variable

Réponses:

0 pour la réponse № 1

j'ai réussi à le faire fonctionner comme suit

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();
})