add sortir
This commit is contained in:
@@ -8,13 +8,16 @@ document.addEventListener('DOMContentLoaded', function () {
|
||||
const longitudeLabel = document.getElementById('longitude-value');
|
||||
|
||||
if (villeSelect && lieuSelect) {
|
||||
// Listener pour la ville
|
||||
// Désactiver le menu déroulant des lieux au départ
|
||||
lieuSelect.disabled = true;
|
||||
|
||||
// Listener pour le changement de ville
|
||||
villeSelect.addEventListener('change', function () {
|
||||
const villeId = villeSelect.value;
|
||||
|
||||
// Réinitialisation des options de lieu
|
||||
lieuSelect.innerHTML = '<option value="">Sélectionnez un lieu</option>';
|
||||
lieuSelect.disabled = true;
|
||||
lieuSelect.disabled = true; // Toujours désactiver avant de récupérer les données
|
||||
|
||||
if (villeId) {
|
||||
fetch(`/get-lieux/${villeId}`)
|
||||
@@ -25,17 +28,19 @@ document.addEventListener('DOMContentLoaded', function () {
|
||||
return response.json();
|
||||
})
|
||||
.then(data => {
|
||||
// Mise à jour des options dans le menu déroulant
|
||||
lieuSelect.innerHTML = '<option value="">Sélectionnez un lieu</option>';
|
||||
data.forEach(lieu => {
|
||||
const option = document.createElement('option');
|
||||
option.value = lieu.id; // ID pour soumettre au backend
|
||||
option.textContent = lieu.nom; // Nom affiché
|
||||
option.dataset.details = JSON.stringify(lieu); // Stocker les détails pour affichage
|
||||
lieuSelect.appendChild(option);
|
||||
});
|
||||
|
||||
lieuSelect.disabled = false;
|
||||
// Ajouter les options si des lieux sont disponibles
|
||||
if (data.length > 0) {
|
||||
data.forEach(lieu => {
|
||||
const option = document.createElement('option');
|
||||
option.value = lieu.id; // Utiliser l'ID pour la soumission
|
||||
option.textContent = lieu.nom; // Texte visible dans le menu
|
||||
lieuSelect.appendChild(option);
|
||||
});
|
||||
lieuSelect.disabled = false; // Activer le menu des lieux
|
||||
} else {
|
||||
lieuSelect.innerHTML = '<option value="">Aucun lieu disponible</option>';
|
||||
lieuSelect.disabled = true; // Toujours désactivé si aucun lieu n'est trouvé
|
||||
}
|
||||
})
|
||||
.catch(error => {
|
||||
console.error('Erreur lors de la récupération des lieux :', error);
|
||||
@@ -43,21 +48,23 @@ document.addEventListener('DOMContentLoaded', function () {
|
||||
}
|
||||
});
|
||||
|
||||
// Listener pour le lieu
|
||||
// Listener pour le changement de lieu
|
||||
lieuSelect.addEventListener('change', function () {
|
||||
const selectedOption = lieuSelect.options[lieuSelect.selectedIndex];
|
||||
if (selectedOption && selectedOption.dataset.details) {
|
||||
const lieuDetails = JSON.parse(selectedOption.dataset.details);
|
||||
if (selectedOption) {
|
||||
const lieuDetails = selectedOption.dataset.details
|
||||
? JSON.parse(selectedOption.dataset.details)
|
||||
: null;
|
||||
|
||||
// Mise à jour des labels avec les détails du lieu sélectionné
|
||||
rueLabel.textContent = lieuDetails.rue || 'Non renseignée';
|
||||
codePostalLabel.textContent = lieuDetails.codePostal || 'Non renseigné';
|
||||
latitudeLabel.textContent = lieuDetails.latitude || 'Non renseignée';
|
||||
longitudeLabel.textContent = lieuDetails.longitude || 'Non renseignée';
|
||||
rueLabel.textContent = lieuDetails?.rue || 'Non renseignée';
|
||||
codePostalLabel.textContent = lieuDetails?.codePostal || 'Non renseigné';
|
||||
latitudeLabel.textContent = lieuDetails?.latitude || 'Non renseignée';
|
||||
longitudeLabel.textContent = lieuDetails?.longitude || 'Non renseignée';
|
||||
|
||||
console.log('Lieu sélectionné:', lieuDetails);
|
||||
} else {
|
||||
// Réinitialisation des labels si aucun lieu n'est sélectionné
|
||||
// Réinitialiser les labels si aucun lieu n'est sélectionné
|
||||
rueLabel.textContent = 'Renseigner avec le lieu';
|
||||
codePostalLabel.textContent = 'Renseigner avec le lieu';
|
||||
latitudeLabel.textContent = 'Renseigner avec le lieu';
|
||||
|
||||
Reference in New Issue
Block a user