Tengo varias tablas en una sola página usando dataTables. Cada uno debe tener su propio 'sAjaxSource'. Parece que no puedo entender exactamente cómo hacer esto. Aquí está el código mínimo que tengo:Múltiples tablas de datos en la misma página con diferentes fuentes Ajax
var oTable = $('.datatable').dataTable({
"bProcessing": true,
"sAjaxSource": "/ajax/function",
"bSort": false,
"fnDrawCallback": function() {
//some click events initilized here
}
});
Esto es básicamente la configuración básica. Cada tabla como la clase de tabla de datos y una ID única. Pero no estoy seguro de cómo cambiar AjaxSource, en base a una tabla específica.
¡Gracias!
EDIT:
Esto es lo que terminé haciendo:
$('.datatable').each(function(index){
$('#'+$(this).attr('id')).dataTable({
"bProcessing": true,
"sAjaxSource": $(this).children('caption').html(),
"bSort": false,
"fnDrawCallback": function() {
}
});
});
Dentro de la mesa me puso una etiqueta de leyenda que se esconde por css y contiene la URL de la fuente Ajax. Se repite en cada instancia y toma la url.
¡Esto parece funcionar hasta ahora!
Sí, probablemente, pero no quiero utilizar una inicialización completamente nueva para cada uno, me pondré bastante desordenado bastante rápido. – dzm
Bueno, es bastante complicado tener una inicialización separada para cada tabla de datos sin tener una inicialización por separado para cada tabla de datos, que es lo que estás pidiendo. Puede intentar tener una inicialización común basada en la clase, luego inicializaciones separadas y más pequeñas con solo el atributo fuente especificado, que le permitirá no repetir el código común. –
Acabo de actualizar mi publicación con una solución que parece estar funcionando, ¿qué opinas? ver algun problema? – dzm