df
This commit is contained in:
parent
23302a299e
commit
85639a5bc1
|
|
@ -47668,9 +47668,11 @@ function formAjoutTableRef() {
|
|||
success: function(data) {
|
||||
$('#div_maj_table').html(data);
|
||||
|
||||
// On nettoie et on initialise tous les selects du formulaire
|
||||
actualiserSelectPicker('#div_maj_table .selectpicker');
|
||||
|
||||
// Init composants
|
||||
$(".datepicker").datepicker({ autoclose: true, format: 'dd/mm/yyyy' });
|
||||
$(".selectpicker").selectpicker('refresh');
|
||||
|
||||
// Focus
|
||||
setTimeout(() => {
|
||||
|
|
@ -47682,19 +47684,19 @@ function formAjoutTableRef() {
|
|||
|
||||
// Filtrer la liste des villes par pays
|
||||
function filtreVilleParPays() {
|
||||
const $selectVille = $('#codeVille');
|
||||
const codePays = $('#codePays').val();
|
||||
const racineWeb = $("#racineWeb").val();
|
||||
|
||||
$.ajax({
|
||||
url: $("#racineWeb").val() + "Ajaxfiltrevilleparpays/",
|
||||
url: racineWeb + "Ajaxfiltrevilleparpays/",
|
||||
type: 'post',
|
||||
data: { codePays: $('#codePays').val() },
|
||||
success: function(htmlOptions) {
|
||||
// On change les options
|
||||
$selectVille.html(htmlOptions);
|
||||
|
||||
// ON APPELLE TA FONCTION : elle verra que le select existe déjà
|
||||
// et fera un 'refresh' proprement sans doubler le texte.
|
||||
actualiserSelectPicker('#codeVille');
|
||||
data: { codePays: codePays },
|
||||
success: function(data) {
|
||||
// On injecte le HTML (contenant le <select> ou les <option>)
|
||||
$('#div_ville').html(data);
|
||||
|
||||
// On appelle la fonction de nettoyage radical
|
||||
actualiserSelectPicker('#div_ville .selectpicker');
|
||||
}
|
||||
});
|
||||
}
|
||||
|
|
@ -47765,9 +47767,12 @@ function formModifTableRef($idData) {
|
|||
success: function(data) {
|
||||
$('#div_maj_table').html(data);
|
||||
|
||||
// On nettoie et on initialise tous les selects du formulaire
|
||||
actualiserSelectPicker('#div_maj_table .selectpicker');
|
||||
|
||||
// Initialisation des composants
|
||||
$(".datepicker").datepicker({ autoclose: true, format: 'dd/mm/yyyy' });
|
||||
$(".selectpicker").selectpicker('refresh');
|
||||
|
||||
if (typeof stylechampsRequis === "function") stylechampsRequis();
|
||||
|
||||
// Focus intelligent
|
||||
|
|
@ -91640,18 +91645,22 @@ function actualiserSelectPicker(selector) {
|
|||
$(selector).each(function() {
|
||||
const $el = $(this);
|
||||
|
||||
// TEST DE SÉCURITÉ : Si le plugin n'est pas là, on l'installe
|
||||
if (!$el.data('selectpicker')) {
|
||||
$el.selectpicker({
|
||||
liveSearch: true,
|
||||
style: 'btn-white border-2 border-start-0 fw-bold',
|
||||
width: '100%',
|
||||
size: 8,
|
||||
noneSelectedText: $("#codeLangue").val() === 'en_US' ? '-- Select --' : '-- Sélectionner --'
|
||||
});
|
||||
} else {
|
||||
// S'il est déjà là, on rafraîchit juste les données
|
||||
$el.selectpicker('refresh');
|
||||
// 1. On détruit proprement l'instance existante
|
||||
if ($el.data('selectpicker')) {
|
||||
$el.selectpicker('destroy');
|
||||
}
|
||||
|
||||
// 2. ÉTAPE RADICALE : On supprime les div résidus du plugin
|
||||
// C'est ce qui empêche le texte de doubler
|
||||
$el.siblings('.bootstrap-select').remove();
|
||||
|
||||
// 3. On ré-initialise avec tes paramètres
|
||||
$el.selectpicker({
|
||||
liveSearch: true,
|
||||
style: 'btn-white border-2 border-start-0 fw-bold',
|
||||
width: '100%',
|
||||
size: 8,
|
||||
noneSelectedText: $("#codeLangue").val() === 'en_US' ? '-- Select --' : '-- Sélectionner --'
|
||||
});
|
||||
});
|
||||
}
|
||||
Loading…
Reference in New Issue
Block a user