从列表插入到数组中

时间:2016-11-02 21:42:02

标签: javascript html

我想知道如何返回当前排行榜上的一系列名称。

这是我的代码:

function top10(maximumResults) {
  //store the leaderboard elements
  //check if leaderboard is less than 10
  //loop through leaderboard
  //return
  var output2 = document.getElementById("top10").getElementsByTagName("li");
  var output = "";

  for(var i = 0; i < output2.length; i++) {
    if(maximumResults.length < 10) {
      output[i] += output2[i].id;
    }
  }
    return output;
}
<div id=leaderboard class=panel>
  <h1>Leaderboard</h1>
  <ol id=top10>
    <li>test</li>
    <li>aaadad</li>
    <li>dfghfdh</li>
    <li>dfghdfhg</li>
    <li>dfghfdh</li>
  </ol>
</div>

2 个答案:

答案 0 :(得分:0)

您可以使用以下代码行将li值提取到数组中:

return Array.from(document.querySelectorAll('#top10>li'), li => li.textContent)

如果打算将结果数组限制为maximumResults个元素,那么您可以使用slice

return Array.from(document.querySelectorAll('#top10>li'), li => li.textContent)
            .slice(0, maximumResults)

答案 1 :(得分:0)

这可以通过非常简单的反应来完成,但在这种情况下,您只需要一些jquery!:

var array = [1, 2, 4, 5, ,6 ,7 ,8] /// here you can update with own elements

$(document).ready(function() {
    for (var i = 0; i < array.length; i++) {
         $("ol").append("<li>" + array[i] + "</li>")
         }
  })

在这里演示:http://jsfiddle.net/n5phf/405/

相关问题