Bug code html js
Bonjour,
pouvez me dire pourquoi mon code ne marche pas
jai besoin de creer une liste dinamique
en cliquant sur un item doit creer une autre liste
<form action="http://jkorpela.fi/cgi-bin/echo.cgi" id=Schedul> <div >
<div>
<li>
<label dir="ltr" for="Schedul" form="Schedul"> When are you available ? <br></label>
<select name="Schedul" id="Schedul" class="Schedul" onchange="getselectvalue(event)"><option value="_" selected> Choose your moment</option>
<option value="Morning" data-inst="--choose a moment--,9:00,10:00,11:00">Morning</option>
<option value="Afternoon" data-inst="--choose a moment--,13:00,15:00,16:00">Afternoon</option>
<option value="Evening" data-inst="--choose a moment--,19:00,20:00,21:00">Evening</option>
</select>
</div>
<div id="selectplace">
</div>
</li>
<input type=submit form="Schedul"/>
</form>
<script>
function getselectevalue(event) {
let x=event.target[event.target.selectedIndex].getAttribute("data-inst");// Taking the good list in relation with the click
let y=event.target.value;
let newarry=x.split(","); // split the string
let select2 = document.createElement("select");
select2.name="moment";
document.getElementById("selectplace").innerHTML=",";
document.getElementById("selectplace").appendChild(select2);
for (let i = 0; i < newarry.length; i++)
{
let option = document.createElement("option");
option.text=newarry[i];
option.value=y+[event.target.selectedIndex];
select2.appendChild(option);
}
}
</script>
pouvez me dire pourquoi mon code ne marche pas
jai besoin de creer une liste dinamique
en cliquant sur un item doit creer une autre liste
<form action="http://jkorpela.fi/cgi-bin/echo.cgi" id=Schedul> <div >
<div>
<li>
<label dir="ltr" for="Schedul" form="Schedul"> When are you available ? <br></label>
<select name="Schedul" id="Schedul" class="Schedul" onchange="getselectvalue(event)"><option value="_" selected> Choose your moment</option>
<option value="Morning" data-inst="--choose a moment--,9:00,10:00,11:00">Morning</option>
<option value="Afternoon" data-inst="--choose a moment--,13:00,15:00,16:00">Afternoon</option>
<option value="Evening" data-inst="--choose a moment--,19:00,20:00,21:00">Evening</option>
</select>
</div>
<div id="selectplace">
</div>
</li>
<input type=submit form="Schedul"/>
</form>
<script>
function getselectevalue(event) {
let x=event.target[event.target.selectedIndex].getAttribute("data-inst");// Taking the good list in relation with the click
let y=event.target.value;
let newarry=x.split(","); // split the string
let select2 = document.createElement("select");
select2.name="moment";
document.getElementById("selectplace").innerHTML=",";
document.getElementById("selectplace").appendChild(select2);
for (let i = 0; i < newarry.length; i++)
{
let option = document.createElement("option");
option.text=newarry[i];
option.value=y+[event.target.selectedIndex];
select2.appendChild(option);
}
}
</script>
Configuration: Windows / Edge 98.0.1108.56
1 réponse
-
ModérateurBonjour,
Déjà, merci d'utiliser les balises de code lorsque tu postes du code sur le forum
Explications disponibles ici : https://codes-sources.commentcamarche.net/faq/11288-les-balises-de-code
Ensuite, si tu ouvres la console de ton navigateur, tu verras lorsque tu fais un choix dans ta liste un joli message d'erreur...
Uncaught ReferenceError: getselectvalue is not defined
.. tu as mal écrit le nom de ta fonction dans le onchange...