Sebenarnya tidak yakin bagaimana menjelaskan ini dengan benar tetapi ini dia ...

Dalam skrip saya, saya menampilkan daftar atlet dari berbagai objek.

Gambar di bawah ini menunjukkan output ...

Add Athlete

Saya menambahkan ikon bin dengan tujuan memungkinkan pengguna untuk menghapus catatan. Di objek saya, saya memiliki tempat sampah utama -dan saya mengatur

const del = data.trash = '🚮'

Di loop saya untuk mencetak hasil yang saya gunakan:

ID: ${i+1} - ${res[i].firstName}, ${res[i].lastName}, Age: ${res[i].age}, Club: ${res[i].club}, EaNumber: ${res[i].eanum}, ${del}

Pertanyaannya adalah saya ingin membuat ikon berfungsi - saya mencoba menambahkan <span id='my-id'> di output dan kemudian membuat pendengar acara -tetapi itu tidak berhasil. Adakah yang tahu metode metode untuk mencapai ini baik di loop atau di objek?

Semoga saya menjelaskan diri saya dengan benar.

0
TRLUK 11 Mei 2021, 18:38

1 menjawab

Jawaban Terbaik

Ketika saya melakukan sesuatu seperti ini, saya akan melakukan:

let ath = ['Foo Bar', 'Baz Qux']
let nid = 0;

for (let a of ath) {
  document.getElementById('alc').innerHTML += `<li id="alc-${nid++}"><span class="n">Loading...</span> <button onclick="del(${nid - 1})">Del</span></li>`;
  document.querySelector(`#alc #alc-${nid - 1} .n`).innerText = a;
}

function del(id) {
  ath.splice(id, 1);
  document.getElementById(`alc-${id}`).remove();
}
<p>This contains athletes:</p>
<ul id="alc"></ul>
1
Logan Devine 12 Mei 2021, 23:50