2012-07-25 1 views
0

Dans mon script, il y a une liste de mots qui remplissent dynamiquement une grille.Ajout à une liste dans javaScript via HTML

Existe-t-il un moyen de remplir la liste avec les mots qui peuplent la grille via HTML?

J'ai ce au moment ...

var listOfWords = ["mat", "cat", "dog", "pit", "pot", "fog"]; 

Est-il possible d'ajouter d'autres mots dans cette liste par HTML plutôt que dans le script?

Je demande parce que les nouveaux mots doivent être ajoutés par les collèges qui peuvent traiter HTML, mais pas au script

Merci.

Répondre

1

En théorie, vous pourriez créer une structure HTML qui créerait un DOM qui pourrait être analysé par JavaScript, qui extrairait le texte entre certains éléments (par exemple, des éléments de liste) et ajouterait ces chaînes au tableau.

... apprendre aux gens la syntaxe de tableau très simple serait plus facile.

... comme si vous utilisiez un fichier texte avec une entrée par ligne.

+0

Pourrais-je avoir une liste de divs dans le HTML qui contiennent les mots et une méthode dans le script pour les sortir dans la liste, puis peupler la grille? @Quentin – m0onio

+0

Quelle serait votre suggestion, en gardant à l'esprit que je ne peux pas leur enseigner la syntaxe du tableau parce qu'on me l'a dit? @Quentin – m0onio

+0

@ m0onio - Oui. Une div ne serait pas aussi sémantiquement appropriée qu'une liste, mais cela fonctionnerait exactement de la même manière. – Quentin

0

Si quelqu'un est capable d'écrire cela en html:

<ul> 
    <li>hello</li> 
    <li>hi</li> 
    <li>hey</li> 
</ul> 

Vous pouvez les ajouter à la liste des mots avec:

[].push.apply(listOfWords, $("ul li").map(function() { 
    return $(this).text(); 
}).get()); 

console.log(listOfWords); 
//["mat", "cat", "dog", "pit", "pot", "fog", "hello", "hi", "hey"] 

Bien que je ne comprends pas comment ils pourraient ne pas être en mesure écrire:

["hello", "hi", "hey"] 
Questions connexes