js使用遞迴解析xml,js遞迴xml
xml結構:
複製代碼 代碼如下:
<RightMenuItems>
<Item Code="New" Name="建立" GroupCode="Edit" GroupName="編輯"/>
<Item Code="Open" Name="開啟" GroupCode="Edit" GroupName="編輯">
<item Code="Word" Name="Word文檔" GroupCode="CommonDocument" GroupName="常規"/>
<item Code="Excel" Name="Excel文檔" GroupCode="CommonDocument" GroupName="常規"/>
<item Code="CustomDocument" Name="自訂文檔" GroupCode="CustomDocument" GroupName="自訂"/>
</Item>
<Item Code="Save" Name="儲存" GroupCode="Edit" GroupName="編輯"/>
<Item Code="Exit" Name="離開" GroupCode="Exit" GroupName="離開"/>
</RightMenuItems>
解析方法:
複製代碼 代碼如下:
$(xml).find("RightMenuItems").each(function () {
this.data = Traversal($(this).children());
});
var Traversal = function (nodes) {
var itemList = new Array();
$.each(nodes, function () {
var entity = new RightMenuEntity();
var obj = $(this);
entity.Code = obj[0].getAttribute("Code");
entity.Name = obj[0].getAttribute("Name");
entity.GroupCode = obj[0].getAttribute("GroupCode");
entity.GroupName = obj[0].getAttribute("GroupName");
if (obj[0].hasChildNodes()) entity.ChildItems = Traversal(obj.children());
itemList.push(entity);
});
return itemList;
};
以上就是javascript使用遞迴解析XML的全部代碼了,超級簡潔,非常使用,給需要的小夥伴參考下。