iamtheone
Messages postés39Date d'inscriptionlundi 10 avril 2017StatutMembreDernière intervention 8 mai 2017
-
Modifié le 20 avril 2017 à 23:50
iamtheone
Messages postés39Date d'inscriptionlundi 10 avril 2017StatutMembreDernière intervention 8 mai 2017
-
21 avril 2017 à 11:50
Bonjour,
J'essaie de faire un programme qui génère l'arbre d'un tournoi avec comme paramètres le nom du tournoi, le nombre de joueurs/équipes et le nom de chaque joueur/équipe. Je n'ai pas encore réfléchi à la mise en forme de l'arbre. Avec mon code actuel qui suit, j'essaie seulement de faire entrer les différents paramètres, notamment le nom de tous les joueurs/équipes dans une variable array.
<!DOCTYPE html>
<html>
<head>
<title>Tournament</title>
</head>
<body>
<h2>Tournament Generator</h2>
<p>This this the explication.</p>
<br /><hr /><br />
<form name="tform">
Tournament name <input type="text" name="tname" maxlength="21" placeholder="max 21 caracters"></input><br />
How many players/teams <input type="number" name="tplayer" value="1"></input><br />
<input type="button" name="tnext" value="Next" onClick="tnext2()"></input>
</form>
<br /><hr><br /><br />
<div id="tboxes"></div>
<br /><br /><br /><br />
<script>
var tplayers; var tboxes;
function tnext2() {
tplayers = eval(document.tform.tplayer.value);
tboxes = "<form name='tboxes'>";
for (i=0; i>tplayers; i++) {
tboxes += i + " <input type='text' name=" + i + "></input><br />";
}
tboxes += "<input type='button' name='tcreate' value='tCreate' onClick='tcreate2(tplayers)'></input></form>";
document.getElementById("tboxes").innerHTML = tboxes;
}
function tcreate2(tplayers) {
rdm = new Array(tplayers);
for (o=0; o>tplayers; o++) {
rdm[o] = document.tboxes.o.value;
}
document.getElementById("tboxes").innerHTML = "";
for (p=0; p>tplayers; p++) {
var choice = rdm[Math.floor(Math.random() * rdm.length)];
//affichage test
document.getElementById("tboxes").innerHTML = choice + "<br /";
rdm.splice(choice, 1);
}
}
</script>
</body>
</html>
Mais le code ne marche pas : aucun input text ne s'affiche dans la div; seulement le bouton. Et j'ai testé, le problème est que les for de mon script ne se lancent pas du tout... Je ne sais vraiment pas pourquoi :/ Help pls merci :))
A voir également:
Générateur de tournoi
Générateur tournoi - Meilleures réponses
Générateur d'arbre de tournoi - Meilleures réponses
iamtheone
Messages postés39Date d'inscriptionlundi 10 avril 2017StatutMembreDernière intervention 8 mai 2017 21 avril 2017 à 00:52
Un dernier petit problème :
<script>
var tplayers; var tboxes;
function tnext2() {
tplayers = eval(document.tform.tplayer.value);
tboxes = "<form name='tboxes'>";
for (i=0; i<tplayers; i++) {
tboxes += i + " <input type='text' id=" + i + "></input><br />";
}
tboxes += "<input type='button' name='tcreate' value='tCreate' onClick='tcreate2(tplayers)'></input></form>";
document.getElementById("tboxes").innerHTML = tboxes;
}
function tcreate2(tplayers) {
rdm = new Array(tplayers);
for (o=0; o<tplayers; o++) {
rdm[o] = document.getElementById(o).value;
}
document.getElementById("tboxes").innerHTML = "";
for (p=0; p<tplayers; p++) {
var choice = rdm[Math.floor(Math.random() * rdm.length)];
//affichage test
document.getElementById("tboxes").innerHTML += choice + "<br />";
rdm.splice(choice, 1);
}
}
</script>
Je souhaite afficher les valeurs des input dans un ordre aléatoire mais où une même valeur ne peut pas se répéter. Donc dans mon dernier for je supprime à chaque fois la variable de l'array qui a été affichée mais ça ne fonctionne pas... Ça s'exécute comme un random normal...
iamtheone
Messages postés39Date d'inscriptionlundi 10 avril 2017StatutMembreDernière intervention 8 mai 2017 21 avril 2017 à 09:01
Ah je viens de trouver. La variable choice définie la value d'une variable de l'array. Et pas son emplacement dans l'array comme le laisse supposer ma ligne splice. Ducoup j'ai fais :
rdm.splice(rdm.indexOf(choice), 1);
et ça marche très bien.
Il me manque plus qu'à mettre les valeurs dans l'arbre du tournoi. Je vous cache pas que j'ai aucune idée...
jordane45
Messages postés37738Date d'inscriptionmercredi 22 octobre 2003StatutModérateurDernière intervention 3 octobre 2023342
>
iamtheone
Messages postés39Date d'inscriptionlundi 10 avril 2017StatutMembreDernière intervention 8 mai 2017 21 avril 2017 à 09:16
iamtheone
Messages postés39Date d'inscriptionlundi 10 avril 2017StatutMembreDernière intervention 8 mai 2017
>
jordane45
Messages postés37738Date d'inscriptionmercredi 22 octobre 2003StatutModérateurDernière intervention 3 octobre 2023 21 avril 2017 à 11:50
Merci bien mais je vais essayer moi même, je suis là pour apprendre... et j'aimerais le faire interactif ...
21 avril 2017 à 00:47