【发布时间】:2019-01-31 18:15:44
【问题描述】:
我有一个句子数组,我希望将它们转换为无序的 HTML 列表,每个列表都包含一个句子的单词,例如 [I play piano the can'] t
<ul>
<li> id = number</li>
<li>I</li>
<li>play</li>
<li>piano</li>
<li>the</li>
<li>can</li>
</ul>
我正在使用以下内容(我希望!!)遍历数组以获得我想要的格式
function makeQuest() {
var quest=['I play piano the can', 'tired I am', 'are seven There week in a days'];
for (var i=0; i< quest.length; i++){
document.write('<ul class ="div3">')
document.write('<li id = "number">' + (i + 1) + '.' + ' '+ '</li>')
for (var j=0; j < quest[i].length; j++){
document.write('<li>')
document.write(quest[i][j])
document.write('</li>' + '</ul>')
}
}
};
makeQuest()
相反,我开始使用这个脚本:
1.I
play piano the can
2. t
ired I am
3. a
re seven There week in a days.
我做错了什么?
【问题讨论】:
-
document.write()是这项工作的错误工具。构建整个列表项字符串。然后在整个字符串完成后,使用innerHTML。或者,您可以使用.createElement()创建新节点并将它们单独附加到 DOM。 -
如果
quest[i]是一个字符串,为什么不在它上面使用split而不是逐个字符地处理它? -
我应用了 quest[i].split() ,它给了我想要的输出,但是我正在应用 sortable 并希望每个单词都是可排序的。我认为我所做的只是将整个句子放入一个
- 标记中,而不是将每个单词放入一个单独的
- 标记中。恐怕我不是程序员,只是想做一个语言导师供个人使用:一旦我遍历数组并“捕获”了一个句子,我如何使用 split 将每个单词插入到单独的标签中?我确信这是一个非常基本的问题,所以请原谅!
标签: javascript arrays list