Bonjour, j'essaye actuellement de crée un select qui contient des valeur envoyer par PHP et qui après sélection me change les valeur d'un select suivant qui affiche les heures que l'on peux sélectionner grâce au select précèdent.
J'arrive a le changer un premier fois mais malheureusement je suis perdu pour la suite et il est fort probable que ce soit faut depuis le début même si ca fonctionne en partie.
Je vous remercie d'avance pour toute l'aide que vous pourrais m'apporter.
//select service
var serviceCheck = document.getElementById("order_openname");
var hoursSelect = document.getElementById("order_ready_at_hours");
var serviceValue = serviceCheck.value;
var serviceValueHourStart = serviceValue.substring(0, 2);
var serviceValueMinuteStart = serviceValue.substring(3, 5);
var serviceValueHourStop = serviceValue.substring(9, 11);
var serviceValueMinuteStop = serviceValue.substring(12, 15);
// change select at start
var select = document.createElement("select");
select.name = "order[ready_at][hours]";
select.classList.add("form-control");
hoursSelect.replaceWith(select, hoursSelect);
hoursSelect.remove();
for (serviceValueHourStart; serviceValueHourStart < serviceValueHourStop; serviceValueHourStart++) {
var addHours = String(serviceValueHourStart);
var option = document.createElement("option");
option.text = addHours;
select.add(option);
}
// change select when service is change
serviceCheck.addEventListener('change', function () {
serviceValue = serviceCheck.value;
serviceValueHourStart = serviceValue.substring(0, 2);
serviceValueMinuteStart = serviceValue.substring(3, 5);
serviceValueHourStop = serviceValue.substring(9, 11);
serviceValueMinuteStop = serviceValue.substring(12, 15);
if (select) {
var selectHours = document.createElement("select");
selectHours.name = "order[ready_at][hours]";
selectHours.classList.add("form-control");
select.replaceWith(selectHours, select);
select.remove();
for (serviceValueHourStart; serviceValueHourStart < serviceValueHourStop; serviceValueHourStart++) {
addHours = String(serviceValueHourStart);
option = document.createElement("option");
option.text = addHours;
selectHours.add(option);
}
}
})
solution trouver.
//select service
var serviceCheck = document.getElementById("order_openname");
var hoursSelect = document.getElementById("order_ready_at_hours");
var serviceValue = serviceCheck.value;
var serviceValueHourStart = serviceValue.substring(0, 2);
var serviceValueMinuteStart = serviceValue.substring(3, 5);
var serviceValueHourStop = serviceValue.substring(9, 11);
var serviceValueMinuteStop = serviceValue.substring(12, 15);
// change select at start
var select = document.createElement("select");
select.name = "order[ready_at][hours]";
select.classList.add("form-control");
hoursSelect.replaceWith(select, hoursSelect);
hoursSelect.remove();
for (serviceValueHourStart; serviceValueHourStart < serviceValueHourStop; serviceValueHourStart++) {
var addHours = String(serviceValueHourStart);
var option = document.createElement("option");
option.text = addHours;
select.add(option);
}
// change select when service is change
serviceCheck.addEventListener('change', function () {
serviceValue = serviceCheck.value;
serviceValueHourStart = serviceValue.substring(0, 2);
serviceValueMinuteStart = serviceValue.substring(3, 5);
serviceValueHourStop = serviceValue.substring(9, 11);
serviceValueMinuteStop = serviceValue.substring(12, 15);
var selectTime = document.getElementById("order_ready_at_hours")
var selectHours = document.createElement("select");
selectHours.name = "order[ready_at][hours]";
selectHours.classList.add("form-control");
selectHours.id = "order_ready_at_hours";
selectTime.replaceWith(selectHours, selectTime);
selectTime.remove();
for (serviceValueHourStart; serviceValueHourStart < serviceValueHourStop; serviceValueHourStart++) {
addHours = String(serviceValueHourStart);
option = document.createElement("option");
option.text = addHours;
selectHours.add(option);
console.log(serviceValueHourStart + ' ' + serviceValueMinuteStart + ' ' + serviceValueHourStop + ' ' + serviceValueMinuteStop);
}
}
})
- Edité par hadesD 14 avril 2021 à 18:41:53
javascript changer un select par un autre
× Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
× Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.