2017-10-13 35 views
-1

我的解決方案:https://jsfiddle.net/thecodesalim/dsvgdkks/2/取代HTML清單,清單添加了JS

HTML:

<div id=leaderboard class="panel hidden"> 
    <h1>Leaderboard</h1> 
    <ol id=top10> 
    <li>Jyn Erso</li> 
    <li>Mon Mothma</li> 
    <li class="me">Han Solo</li> 
    <li>Galen Erso</li> 
    <li>Thane Kyrell</li> 
    <li>Norra Wexley</li> 
    <li>Ciena Ree</li> 
    <li>Malakili</li> 
    <li>R5-D4</li> 
    </ol> 
</div> 

JS:

function updateLeaderBoard(arr,me){ 
    let players = document.getElementById("top10"); 
    for(let i =0; i < arr.length;i++){ 
     let li = document.createElement("li"); 
     li.appendChild(document.createTextNode(arr[i])); 
     players.append(li); 
     if(arr[i].includes(me)) li.classList.add("me"); 
    } 
} 
updateLeaderBoard(["Jack","Robo","Simi"],"Robo"); 

我想要的文字內容是隻能在JavaScript中的列表中,應該更換html列表。 謝謝

+0

編輯:https://jsfiddle.net/thecodesalim/dsvgdkks/9/ – thecodesalim

+0

編輯的問題,不要在評論中發表編輯。 – Barmar

+0

我不明白這個問題。 「只接受js裏的李」是什麼意思? – Barmar

回答

1

我相信你是說HTML列表是一個佔位符,你想清除它,只需從js插入任何你想要的東西?如果是這樣,就清空<ol>,當你選擇了它:

let players = document.getElementById("top10"); 
players.innerHTML = "";