This commit is contained in:
KONE SOREL 2026-03-07 16:32:06 +00:00
parent 6d822d1d53
commit 809f16d657

View File

@ -47548,38 +47548,32 @@ function afficheDonneesTableChoisie(fichier) {
type: 'post',
data: donnees,
success: function(data) {
// Injection du nouveau contenu HTML
$divLister.html(data);
// 1. On injecte le HTML qui contient le nouveau tableau et potentiellement les nouveaux filtres
$divLister.html(data);
// ÉTAPE 5 : Post-traitement et Ré-initialisation des composants
// Cas spécifique : Jours Fériés
if (fichier === "Ajaxtblisterjoursferiers") {
// On s'assure que les valeurs des filtres sont maintenues
$('#codePays').val(donnees.codePays);
$('#annee').val(donnees.annee);
// CRUCIAL : On ré-initialise le SelectPicker du filtre Pays injecté
// Cela lui redonne son style Neutral Pro (bordures 2px, icône, recherche)
if (typeof actualiserSelectPicker === "function") {
actualiserSelectPicker('#codePays', false);
}
}
// 2. Traitement spécifique Jours Fériés
if (fichier === "Ajaxtblisterjoursferiers") {
// A. On ré-habille le SelectPicker AVANT de lui donner une valeur
if (typeof actualiserSelectPicker === "function") {
actualiserSelectPicker('#codePays', false);
}
// ÉTAPE 6 : Initialisation de la DataTable (Standard ou Spécifique)
if (fichier === "Ajaxtblistertableauajustementgarant") {
if (typeof appliquerDataTable === "function") appliquerDataTable();
} else {
// On récupère le nom de la table pour le titre de l'export
const nomTableRaw = $("#listetables option:selected").text() || 'Export';
const nomTableClean = nomTableRaw.trim().replace(/[^a-z0-9]/gi, '_');
// Appel de la fonction générique définie dans tes standards
if (typeof initDataTableReference === "function") {
initDataTableReference('#tableLister', 'Referentiel_' + nomTableClean);
}
}
},
// B. On force la valeur et on demande au plugin de se rafraîchir visuellement
// C'est le .selectpicker('refresh') qui garantit que le pays choisi reste affiché
$('#codePays').val(donnees.codePays).selectpicker('refresh');
$('#annee').val(donnees.annee);
}
// 3. Initialisation de la DataTable
// Elle va maintenant lire les valeurs correctes dans les champs pour filtrer si besoin
const nomTableRaw = $("#listetables option:selected").text() || 'Export';
const nomTableClean = nomTableRaw.trim().replace(/[^a-z0-9]/gi, '_');
if (typeof initDataTableReference === "function") {
initDataTableReference('#tableLister', 'Referentiel_' + nomTableClean);
}
},
error: function(xhr) {
toastr.error((codeLangue === "en_US") ? "Data loading error" : "Erreur de chargement des données");
$divLister.html(`