2017-09-25 5 views
1

なぜ私はすべてのリスト項目にupBtnを追加できないのか分かりません。 ご協力いただきありがとうございます。すべてのリスト項目にappendChildを追加する方法は?

// append upBtn to all exist lis 
const upBtn = document.createElement("button"); 
upBtn.className ="up"; 
upBtn.textContent = "up"; 
const lis = document.querySelectorAll("li"); 
for (var i = 0; i < lis.length; i++) { 
    lis[i].appendChild(upBtn); 
} 
+0

あなたは、問題を実証フィドルを作成してくださいことはできますか? –

+0

https://developer.mozilla.org/en-US/docs/Web/API/Node/appendChild既存のノードを追加すると移動します。追加またはクローンを作成するたびに新しいボタンを作成する必要があります。 – jmoerdyk

答えて

3

問題は、同じボタンを何度も繰り返して追加しようとしていることです。毎回別のボタンを作成する必要があります。

これを試してみてください:

// append upBtn to all exist lis 
const lis = document.querySelectorAll("li"); 
for (var i = 0; i < lis.length; i++) { 
    const upBtn = document.createElement("button"); 
    upBtn.className ="up"; 
    upBtn.textContent = "up"; 
    lis[i].appendChild(upBtn); 
} 

JSBin:http://jsbin.com/ceseyadoho/edit?html,js,output

+0

おかげさまでありがとうございました! – sabrina

関連する問題