This commit is contained in:
KONE SOREL 2026-03-07 17:13:50 +00:00
parent 2c46150adb
commit dd18eaa6bd

View File

@ -47513,41 +47513,43 @@ function afficheDonneesTableChoisie(fichier) {
if (!fichier || fichier === '') return; if (!fichier || fichier === '') return;
const racineWeb = $("#racineWeb").val(); const racineWeb = $("#racineWeb").val();
const $divLister = $('#div_lister_table'); // Ton conteneur principal const $divLister = $('#div_lister_table');
// 1. On récupère les valeurs AVANT de vider le div // 1. On mémorise les valeurs actuelles avant le refresh
const valPays = $('#codePays').val(); const paysSelectionne = $('#codePays').val();
const valAnnee = $('#annee').val(); const anneeSelectionnee = $('#annee').val();
// 2. Nettoyage impératif pour éviter les IDs en double dans le DOM // 2. Appel AJAX
if ($.fn.selectpicker) {
$('.selectpicker').selectpicker('destroy');
$('.bootstrap-select').remove();
}
$divLister.empty();
// 3. Appel AJAX
$.ajax({ $.ajax({
url: racineWeb + fichier + "/", url: racineWeb + fichier + "/",
type: 'post', type: 'post',
data: { codePays: valPays, annee: valAnnee }, data: {
codePays: paysSelectionne,
annee: anneeSelectionnee
},
success: function(data) { success: function(data) {
// 4. On injecte TOUT le bloc (Filtres + Table) // 3. On remplace tout le bloc
$divLister.html(data); $divLister.html(data);
// 5. RÉ-INITIALISATION (L'ordre est vital ici) // 4. RÉ-INITIALISATION DU SELECT (Indispensable pour le look Neutral Pro)
// On utilise le sélecteur standard de bootstrap-select
// On ré-habille le SelectPicker injecté if ($('#codePays').length > 0) {
actualiserSelectPicker('#codePays', false); // On détruit l'ancien qui vient d'être injecté "mort" et on le recrée
$('#codePays').selectpicker('destroy');
// On FORCE la valeur récupérée et on rafraîchit l'affichage actualiserSelectPicker('#codePays', false);
// C'est ce qui fait que le pays choisi reste affiché
$('#codePays').val(valPays).selectpicker('refresh'); // On lui redonne sa valeur et on rafraîchit l'affichage
$('#annee').val(valAnnee); $('#codePays').val(paysSelectionne).selectpicker('refresh');
$('#annee').val(anneeSelectionnee);
}
// 6. On initialise la DataTable // 5. INITIALISATION DATATABLE
const nomTableRaw = $("#listetables option:selected").text() || 'Jours_Feriers'; // On s'assure que l'ancien ID n'existe plus en mémoire
initDataTableReference('#tableLister', 'Export_' + nomTableRaw.trim().replace(/\s+/g, '_')); if ($.fn.DataTable.isDataTable('#tableLister')) {
$('#tableLister').DataTable().destroy();
}
initDataTableReference('#tableLister', 'Referentiel_Jours_Feriers');
} }
}); });
} }