10/02/2011

XML : Nesting level

ΠžΠΏΡƒΠ±Π»ΠΈΠΊΠΎΠ²Π°Π½ΠΎ Π²: ΠžΠΏΡ‹Ρ‚ — Вэги: , , , — Nicolas Prof @ 17:37

Π•ΡΡ‚ΡŒ Π·Π°Π΄Π°Ρ‡Π°, имСя ссылку Π½Π° XML Node, ΡƒΠ·Π½Π°Ρ‚ΡŒ Π΅Π³ΠΎ ΡƒΡ€ΠΎΠ²Π΅Π½ΡŒ влоТСния Π² ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π½ΠΎΠΌ Ρ‚ΠΈΠΏΠ΅ элСмСнтов.

1
2
3
4
5
6
7
8
function getNestingLevel($node : XML, $level : int, $name : String) : int{
	var parent : XML = $node.parent();
	if(parent != null && parent.localName() == $name){
		return getNestingLevel(parent, ++$level, $name);
	}
 
	return $level;
}

Π“Π΄Π΅ ΠΈ ΠΊΠ°ΠΊ этим ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒΡΡ?
Π•ΡΡ‚ΡŒ структура XML для Π΄Ρ€Π΅Π²ΠΎΠ²ΠΈΠ΄Π½ΠΎΠ³ΠΎ мСню ΠΊ ΠΏΡ€ΠΈΠΌΠ΅Ρ€Ρƒ, элСмСнты ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ³ΠΎ ΠΈΠΌΠ΅ΡŽΡ‚ имя – item.
Π’ΠΎΠ³Π΄Π°:

1
var level : int = getNestingLevel(someInnerXMLElement, 0, "item");
 
ο»Ώ
Menu:
Twitter Updates:
    Archive:
    Control:
    Flash & Flex friends: