0
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29
private function nodeCompare(searchNode:XML, findNode:XML):Boolean {
//trace(findNode.nodeName);
if(searchNode.localName() != findNode.localName()) {
//trace(searchNode.nodeName + "!=" + curnode);
return false;
}
if(findNode.namespace() != searchNode.namespace()) {
return false;
}
if(searchNode.text() && findNode.text() != searchNode.text()) {
return false;
}
for each(var attr:Object in searchNode.attributes) {
//trace ("**" + attr); // um, that's not helpful
}
var found:Boolean = false;
for each(var searchSub:XML in searchNode.children()) {
for each(var findSub:XML in findNode.children()) {
if(nodeCompare(searchSub, findSub)) {
found = true;
break;
}
}
if(!found) return false;
found = false;
}
//trace("match!");
return true;
}
Тот же источник. Явно задумка была реализовать по-новой XML.contains() метод, но не получилось :)
Запостил:
wvxvw ,
21.07.2011 (Updated 25.03.2018 )
Комментарии (0) RSS