Faire un html liste non ordonnée de tableau javascript
Je vais avoir un peu d'un problème. Je suis en train de créer une liste non ordonnée à partir d'un tableau javascript, voici mon code:
var names = [];
var nameList = "";
function submit()
{
var name = document.getElementById("enter");
var theName = name.value;
names.push(theName);
nameList += "<li>" + names + "</li>";
document.getElementById("name").innerHTML = nameList;
}
<input id="enter" type="text">
<input type="button" value="Enter name" onclick="submit()">
<br>
<br>
<div id="name"></div>
Par exemple, si je poste les 2 noms, Nom1 et Nom2 ma liste ressemble à ceci:
•Name1
•Name1,Name2
Je veux qu'elle ressemble à ceci:
•Name1
•Name2
Remarque: Ne pas utiliser une fonction personnalisée avec le nom "soumettre" à l'intérieur d'une ligne de gestionnaire d'événements. Dès que vous mettez les éléments à l'intérieur d'une forme,
submit
va se référer à la méthode de soumission de la <form>
élément. Aussi, votre div
élément devrait être un ul
élément.OriginalL'auteur marcel jager | 2015-02-23
Vous devez vous connecter pour publier un commentaire.
Si vous regardez votre code, vous êtes seulement à la création d'un
li
avec tous vosnames
que le contenu. Ce que vous voulez faire est de la boucle sur votrenames
et de la création d'unli
pour chaque, droite?Changement:
:
Si vous êtes intéressé dans certains des meilleurs pratiques, vous pouvez consulter la réécriture de votre logique ici: http://jsfiddle.net/rgthree/ccyo77ep/
Si je fais cela, c'est un peu mieux, mais maintenant je reçois toujours les résultats précédents dans un autre élément de la liste, si j'ai maintenant entrer Nom2 ce n'est pas le deuxième, mais le troisième élément de la liste et Nom1 est le premier et le deuxième élément de la liste.
Oui, vous avez
nameList
comme une variable en dehors de lasubmit
de fermeture, il est donc toujours en ajoutant les mêmes éléments. J'ai mis à jour ma réponse de sorte qu'à chaque soumettre appel,nameList
blancs de lui-même. Cela devrait le faire pour vous 🙂OriginalL'auteur rgthree
OriginalL'auteur David Cameron