quiero elegir datatable ajax url si contiene datos1, contiene datos2 o contiene datos3.
aquí está mi código:
$(document).ready(function() { var $table = $('#datatable1'); $table.DataTable({ "columnDefs": [ {"className": "dt-center", "targets": "_all"} ], if(containdata1){ ajax: { url: "/api/dunapi/"+containdata1, type: 'GET' }, if(containdata2){ ajax: { url : "/api/dunapi/"+containdata2, type : 'GET' }, } if(containdata3){ ajax: { url : "/api/dunapi/"+containdata3, type : 'GET' }, }quiero hacerlo asi si se puede hacer
Si quiere decir que desea fusionar datos de muchas fuentes de datos, entonces sería mejor recopilar los datos fuera de DataTable. Use la función ajax() de jQuery (o cualquier cliente de JavaScript como axios) para obtener todos los datos, fusionarlos en un solo objeto y pasarlos a la opción de datos de DataTables.
Me gusta:
var data = [] if(containdata1){ await axios.get("/api/dunapi/"+containdata1).then(res => { data = data.concat(res.data) }) } if(containdata2){ await axios.get("/api/dunapi/"+containdata2).then(res => { data = data.concat(res.data) }) } if(containdata3){ await axios.get("/api/dunapi/"+containdata3).then(res => { data = data.concat(res.data) }) }luego, cuando defina su tabla de datos:
{ // datatable options data: data ..... } Nota: debe agregar async antes de la función lista porque estamos usando esperar antes de cada solicitud:
$(document).ready(async function() { ...... }