我想按VM字段名稱屬性對我的節點列表進行排序。 的XML:在javascript中重新排列節點列表
<SRM>
<HBR>
<VM Name="mast0010">
<FieldOne>ttttt</FieldOne>
<Disk Name="Name One">
<FieldTwo>aaaaa</FieldTwo>
<FieldThree>bbbbb</FieldThree>
</Disk>
<Disk Name="Name Two">
<FieldTwo>fffff</FieldTwo>
<FieldThree>ccccc</FieldThree>
</Disk>
</VM>
<VM Name="mast0003">
<FieldOne>rrrrr</FieldOne>
<Disk Name="Name One">
<FieldTwo>ddddd</FieldTwo>
<FieldThree>eeeee</FieldThree>
</Disk>
</VM>
</HBR>
</SRM>
我寫了下面的代碼:
var x=xmlDoc.getElementsByTagName("VM");
var ax = Array.prototype.slice.call(x, 0);
for (var i=0; i<ax.length; i++) {
ax.sort(function(a, b){
var a = ax[i].getAttribute('Name');
var b = ax[i].getAttribute('Name');
if(a < b) return -1;
if(a > b) return 1;
return 0;
});
}
for (i=0; i<ax.length; i++) {
document.write(ax[i].getAttribute('Name') + "<br/>");
}
它返回mast0010,mast0003 我需要mast0003,mast0010秩序。請幫助我。我不明白問題出在哪裏。 THX
呵呵,謝謝。它現在正在工作。 – breni