dfg
This commit is contained in:
parent
9c546fc180
commit
ab732de1db
|
|
@ -190,9 +190,8 @@ function contruireParamLike($param)
|
|||
}
|
||||
|
||||
function liste_options($liste, $val_def, $strict = false) {
|
||||
// On met le libellé directement dans l'option vide
|
||||
$libelle_def = (est_anglophone()) ? "-- Select --" : "-- Sélectionner --";
|
||||
$select = $strict ? '' : '<option value="">' . $libelle_def . '</option>';
|
||||
// On laisse l'option vide de texte. C'est le JS qui gérera l'affichage.
|
||||
$select = $strict ? '' : '<option value="" selected></option>';
|
||||
|
||||
foreach ($liste as $option):
|
||||
$selected = ($val_def == $option["code"]) ? ' selected' : '';
|
||||
|
|
|
|||
|
|
@ -47685,16 +47685,22 @@ function formAjoutTableRef() {
|
|||
// Filtrer la liste des villes par pays
|
||||
function filtreVilleParPays() {
|
||||
const $selectVille = $('#codeVille');
|
||||
const codePays = $('#codePays').val();
|
||||
|
||||
if (!codePays) return;
|
||||
|
||||
$.ajax({
|
||||
url: $("#racineWeb").val() + "Ajaxfiltrevilleparpays/",
|
||||
type: 'post',
|
||||
data: { codePays: $('#codePays').val() },
|
||||
data: { codePays: codePays },
|
||||
success: function(htmlOptions) {
|
||||
// On vide et on remplace les options (on ne touche pas au select lui-même)
|
||||
$selectVille.empty().append(htmlOptions);
|
||||
|
||||
// On appelle notre fonction de sécurité
|
||||
// On remplace le contenu
|
||||
$selectVille.html(htmlOptions);
|
||||
|
||||
// On force la désélection pour que le placeholder s'affiche
|
||||
$selectVille.val('');
|
||||
|
||||
// On appelle la fonction de sécurité
|
||||
actualiserSelectPicker('#codeVille');
|
||||
}
|
||||
});
|
||||
|
|
@ -91643,20 +91649,27 @@ function initDataTableReference(selector, exportTitle = 'Export_Donnees') {
|
|||
function actualiserSelectPicker(selector) {
|
||||
$(selector).each(function() {
|
||||
const $el = $(this);
|
||||
const lang = $("#codeLangue").val();
|
||||
const txtDefault = (lang === 'en_US') ? "-- Select --" : "-- Sélectionner --";
|
||||
|
||||
// On nettoie les attributs qui pourraient forcer un placeholder fantôme
|
||||
// 1. On supprime physiquement les attributs qui causent le doublage dans le bouton
|
||||
$el.removeAttr('title').prop('title', '');
|
||||
$el.attr('data-none-selected-text', txtDefault);
|
||||
|
||||
// 2. On vérifie si l'instance existe
|
||||
if (!$el.data('selectpicker')) {
|
||||
$el.selectpicker({
|
||||
liveSearch: true,
|
||||
style: 'btn-white border-2 border-start-0 fw-bold',
|
||||
width: '100%',
|
||||
size: 8,
|
||||
// On ne définit PAS noneSelectedText ici car il est dans le HTML (PHP)
|
||||
liveSearchPlaceholder: ($("#codeLangue").val() === "en_US") ? "Search..." : "Rechercher..."
|
||||
noneSelectedText: txtDefault, // Source unique du texte
|
||||
noneResultsText: (lang === 'en_US') ? "No results" : "Aucun résultat",
|
||||
liveSearchPlaceholder: (lang === 'en_US') ? "Search..." : "Rechercher..."
|
||||
});
|
||||
} else {
|
||||
// 3. Si elle existe, on met à jour le texte proprement avant le refresh
|
||||
$el.data('selectpicker').options.noneSelectedText = txtDefault;
|
||||
$el.selectpicker('refresh');
|
||||
}
|
||||
});
|
||||
|
|
|
|||
Loading…
Reference in New Issue
Block a user