fd
This commit is contained in:
parent
485448e9da
commit
bb7d836420
|
|
@ -48256,58 +48256,49 @@ function cocherDecocherUn(fichier_lister,id){
|
|||
|
||||
function filtreTableReference(numeroTable) {
|
||||
const racineWeb = $("#racineWeb").val();
|
||||
const codeLangue = $("#codeLangue").val();
|
||||
const div_liste_tables = $("#div_listetables");
|
||||
const $divListe = $("#div_listetables");
|
||||
const $selectOriginal = $("#listetables");
|
||||
|
||||
// 1. Réinitialisation complète des zones de travail
|
||||
// On vide tout pour que l'utilisateur sache qu'il change de contexte
|
||||
// 1. Destruction propre de l'instance Selectpicker avant injection
|
||||
// Cela évite que le plugin laisse des traces dans le DOM
|
||||
if ($selectOriginal.length > 0) {
|
||||
$selectOriginal.selectpicker('destroy');
|
||||
}
|
||||
|
||||
// 2. Nettoyage des zones de travail
|
||||
$("#div_lister_table").html("");
|
||||
$('#div_fichiers_table').html("");
|
||||
$('#div_entete_table').html("");
|
||||
$('#div_maj_table').html(""); // On vide aussi la zone de saisie/modification
|
||||
$('#div_maj_table').html("");
|
||||
|
||||
// 3. Préparation de l'appel AJAX
|
||||
$divListe.css('opacity', '0.5');
|
||||
|
||||
// 2. Préparation des données (Format Objet)
|
||||
const donnees = { numeroTable: numeroTable };
|
||||
|
||||
// 3. Effet de chargement sur le menu déroulant
|
||||
div_liste_tables.css('opacity', '0.5');
|
||||
|
||||
// 4. Appel AJAX
|
||||
$.ajax({
|
||||
url: racineWeb + "Ajaxfiltretablesreference/",
|
||||
type: 'post',
|
||||
data: donnees,
|
||||
data: { numeroTable: numeroTable },
|
||||
success: function(data) {
|
||||
// Mise à jour du sélecteur de tables
|
||||
div_liste_tables.html(data);
|
||||
// 4. Injection du nouveau HTML (qui contient le nouveau <select>)
|
||||
$divListe.html(data);
|
||||
|
||||
// Ré-initialisation du SelectPicker (Bootstrap-select)
|
||||
// setTimeout permet de s'assurer que le DOM est prêt
|
||||
// 5. Ré-initialisation forcée
|
||||
// On utilise un léger délai pour laisser le DOM respirer
|
||||
setTimeout(function() {
|
||||
const $select = $("#listetables");
|
||||
$select.selectpicker('refresh');
|
||||
$select.selectpicker('focus');
|
||||
$("#listetables").selectpicker({
|
||||
liveSearch: true,
|
||||
size: 10,
|
||||
style: 'btn-white border-primary-subtle fw-bold'
|
||||
});
|
||||
}, 50);
|
||||
|
||||
// Notification discrète (Optionnel)
|
||||
if (typeof toastr !== 'undefined') {
|
||||
let msg = (codeLangue === "en_US") ? "Tables updated" : "Tables mises à jour";
|
||||
toastr.info(msg);
|
||||
}
|
||||
},
|
||||
error: function(xhr) {
|
||||
console.error("Erreur de filtrage :", xhr.statusText);
|
||||
let errorMsg = (codeLangue === "en_US") ? "Error loading tables" : "Erreur lors du chargement des tables";
|
||||
alert_ebene(errorMsg, errorMsg);
|
||||
error: function() {
|
||||
console.error("Erreur lors du filtrage des tables");
|
||||
},
|
||||
complete: function() {
|
||||
// Rétablir l'opacité
|
||||
div_liste_tables.css('opacity', '1');
|
||||
$divListe.css('opacity', '1');
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
|
||||
function supprimer_choix(){
|
||||
|
||||
var fichier_lister = $('#fichier_lister').val();
|
||||
|
|
|
|||
Loading…
Reference in New Issue
Block a user