我正在編輯一個網頁,其中包含一個div包裹的醫生名稱和圖像列表。我將更多地添加到該列表中,而我的客戶現在需要按字母順序排列所有名稱。就像手動做的那樣(我知道我的客戶將來也會增加更多的醫生),我試着寫一個腳本來爲我完成這項工作。我將每位醫生都包裹在一個名爲「alphabetize」的div中,並在每位醫生的姓氏周圍設置了「lastName」的span id。Javascript代碼爲字母排列的div
<div class="alphabetize large-6 columns sameheight-wrap">
<div class="large-4 medium-4 columns sameheight PadT20"> <img src="../imgs/dev/crna-staff/John-Doe.jpg" alt=" John Doe, CRNA" class="pictureBottomBorder"> </div>
<div class="large-8 medium-8 columns contenttable sameheight PadT20">
<div class="border vmid text-center bgdblue PadB"> <span class="white medium"><strong>John<span id="lastName">Doe</span></strong><br>
</span> <span class="white PadT5"> MSN, Thomas Jefferson University School of Nurse Anesthesia</span> </div>
</div>
</div>
我把下面的腳本放在那個頁面上;
<script>
var $divs = $("div.alphabetize");
$(function() {
var alphabeticallyOrderedDivs = $divs.sort(function (a, b) {
return $(a).find("#lastName").text() > $(b).find("#lastName").text();
});
$("#alpha").html(alphabeticallyOrderedDivs);
});
</script>
由於某些原因,腳本運行不正常。醫生無序,我還需要添加一個變量的代碼,排序前3個字母的姓氏。誰能幫忙? Javascript並不是我的強項。不知道我是否錯過了一些東西。
之前,我嘗試一個答案,你反對讓你的醫生的名字在JavaScript對象/數組?之後操作頁面效率不高。 – jdu
ID必須在頁面上單數。 – epascarello
jdu - 我接受任何不涉及手動訂購60多名醫生的解決方案。歡迎任何建議,謝謝。 – Eddie