Bonjour,
J'essaie d'orienter le visiteur en fonction de ce qu'il veut via un QCM
<script>
window.addEventListener("load",()=>{
const tab=[1,1,1];
const rab=[1,1,0];
const tab=[1,0,1];
document.getElementById("form1").addEventListener("submit",(e)=>{
e.preventDefault();
for(i=0;i<tab.length;i++)
if(e.target.elements["choix"+i].value==tab[i]) {
document.getElementById("res").textContent="Il vous faut une attestation!"}
else if(e.target.elements["choix"+i].value==tab[i]){
document.getElementById("res").textContent="Il vous faut un rendez-vous !"}
else if(e.target.elements["choix"+i].value==tab[i]){
document.getElementById("res").textContent="Il vous faut un document !"}
},false)
},false)
</script>
</head>
<body>
<div id="res"></div>
<hr />
<form id="form1">
<p>
<div>Pour quel usage</div>
<input id="cl"type="radio" name="choix0" value="0"><label for="ch0_0">Communication interne</label><br/>
<input id="cla"type="radio" name="choix0" value="1"><label for="ch0_1">Communication externe</label><br/>
</p>
<p>
<div>Sur quel support ?</div>
<input id="bl"type="radio" name="choix1" value="0"><label for="ch1_0">un</label><br/>
<input id="bla"type="radio" name="choix1" value="1"><label for="ch1_1">trois</label><br/>
</p>
<p>
<div>Sous quelle forme ? </div>
<input id="tl" type="radio" name="choix2" value="0"><label for="ch2_0">fichier</label><br/>
<input id="tla"type="radio" name="choix2" value="1"><label for="ch2_1">je ne sais pas</label><br/>
</p>
<p>
<input type="submit" />
</p>
</form>
Je cherche à faire en sorte que s'il répond à [1,1,1], alors la réponse "Il vous faut un document"
J'obtiens des réponses en vrac, qui ne correspondent pas à ce que j'ai renseigné..
Ex : [1,1,1] => Il vous faut un rendez-vous
Alors que ce devrait être la premiere réponse..
La 3eme constante ne veut pas s'activer..
Merci à vous 🙏🏼
La déclaration const permet de créer une constante nommée accessible uniquement en lecture. Cela ne signifie pas que la valeur contenue est immuable, uniquement que l'identifiant ne peut pas être réaffecté. Autrement dit la valeur d'une constante ne peut pas être modifiée par des réaffectations ultérieures. Une constante ne peut pas être déclarée à nouveau.
"https://developer.mozilla.org/fr/docs/Web/JavaScript/Reference/Statements/const"
const tab=[1,1,1];
const rab=[1,1,0];
--> const tab=[1,0,1];
une fois ceci corrigé, tu fais un console.log de l'evenement
for(i=0;i<tab.length;i++)
---> console.log(e); Tu vas comprendre ce que tu reçois et cela va t'aider a avancé ; )
if(e.target.elements["choix"+i].value==tab[i])
Bonjour !
Merci beaucoup mais il reste des choses que je ne comprends pas,
Cela fait plus 7h que j'essaie toutes les combinaisons (garder une même var et changer les valeurs au fur et à mesure des conditions if,
créer une variable nombre pour i<nombre.length etc..
Je ne trouve aucune solution miracle...
window.addEventListener("load",()=>{
var tab = [1,1,1] ;
var rab = [0,1,1];
var fab=[1,0,1];
var nombre=[4];
document.getElementById("form1").addEventListener("submit",(e)=>{
e.preventDefault();
for(i=0;i<nombre.length;i++)
if(e.target.elements["choix"+i].value==tab[i]) {
document.getElementById("res").textContent="Il vous faut une attestation!"}
else if(e.target.elements["choix"+i].value==rab[i]){
console.log("Il vous faut un rendez-vous !")}
else if(e.target.elements["choix"+i].value==fab[i]) {
document.getElementById("res").textContent="Il vous faut un document !"}
},false)
},false)