This commit is contained in:
KONE SOREL 2026-03-07 16:34:58 +00:00
parent 809f16d657
commit ffc8628d3d

View File

@ -47548,31 +47548,32 @@ function afficheDonneesTableChoisie(fichier) {
type: 'post', type: 'post',
data: donnees, data: donnees,
success: function(data) { success: function(data) {
// 1. On injecte le HTML qui contient le nouveau tableau et potentiellement les nouveaux filtres // 1. Injection du HTML
$divLister.html(data); $divLister.html(data);
// 2. Traitement spécifique Jours Fériés // 2. Traitement spécifique Jours Fériés
if (fichier === "Ajaxtblisterjoursferiers") { if (fichier === "Ajaxtblisterjoursferiers") {
// A. On ré-habille le SelectPicker AVANT de lui donner une valeur // --- SÉCURITÉ ANTI-DOUBLON ---
if (typeof actualiserSelectPicker === "function") { // On vérifie si l'élément est déjà un selectpicker, si oui on le détruit proprement
actualiserSelectPicker('#codePays', false); if ($('#codePays').data('selectpicker')) {
$('#codePays').selectpicker('destroy');
} }
// On supprime physiquement le conteneur généré par Bootstrap-Select s'il existe
$('#codePays').siblings('.bootstrap-select').remove();
// B. On force la valeur et on demande au plugin de se rafraîchir visuellement // Maintenant on peut le ré-initialiser proprement
// C'est le .selectpicker('refresh') qui garantit que le pays choisi reste affiché actualiserSelectPicker('#codePays', false);
// On applique la valeur ET on rafraîchit
$('#codePays').val(donnees.codePays).selectpicker('refresh'); $('#codePays').val(donnees.codePays).selectpicker('refresh');
$('#annee').val(donnees.annee); $('#annee').val(donnees.annee);
} }
// 3. Initialisation de la DataTable // 3. DataTable
// Elle va maintenant lire les valeurs correctes dans les champs pour filtrer si besoin
const nomTableRaw = $("#listetables option:selected").text() || 'Export'; const nomTableRaw = $("#listetables option:selected").text() || 'Export';
const nomTableClean = nomTableRaw.trim().replace(/[^a-z0-9]/gi, '_'); const nomTableClean = nomTableRaw.trim().replace(/[^a-z0-9]/gi, '_');
initDataTableReference('#tableLister', 'Referentiel_' + nomTableClean);
if (typeof initDataTableReference === "function") {
initDataTableReference('#tableLister', 'Referentiel_' + nomTableClean);
}
}, },
error: function(xhr) { error: function(xhr) {
toastr.error((codeLangue === "en_US") ? "Data loading error" : "Erreur de chargement des données"); toastr.error((codeLangue === "en_US") ? "Data loading error" : "Erreur de chargement des données");