Sort the table
Bir tablo var:
| İsim | Soyisim | YaŠ|
|---|---|---|
| John | Smith | 10 |
| Pete | Brown | 15 |
| Ann | Lee | 5 |
| ... | ... | ... |
Belki içinde daha çok satır var.
"name" sütunu tarafından sıralanması için kodu buraya yazın.
Ãözüm kısa, ancak biraz kafa karıÅtırıcı görünebilir, bu yüzden burada kapsamlı yorumlar sunuyorum:
let sortedRows = Array.from(table.rows)
.slice(1)
.sort((rowA, rowB) => rowA.cells[0].innerHTML > rowB.cells[0].innerHTML ? 1 : -1);
table.tBodies[0].append(...sortedRows);
-
table.querySelectorAll('tr')gibi tüm<tr>leri al, sonra onlardan bir array yap, çünkü array yöntemlerine ihtiyacımız var. -
İlk TR (
table.rows[0]) aslında bir tablo baÅlıÄıdır, bu yüzden geri kalanını.slice(1)ile alıyoruz. -
Daha sonra onları ilk
<td>(isim alanı)'nın içeriÄi ile karÅılaÅtıryoruz. -
Åimdi düÄümleri
.append(...sortedRows)olarak doÄru sırada ekleyin.Tabloların doÄrudan belirtilmeyen bir
öÄesi vardır, bu yüzden onu alır ve içine ekleriz: basit birtable.append(...)baÅarısız olacaktır.Lütfen not edin: Onları kaldırmak zorunda deÄiliz, sadece yeniden ekle (âre-insertâ), onlar eski yerlerini kendiliÄinden bırakacaktır.