Вход

Просмотр полной версии : XML! Помогите с поиском.


NAO111
19.02.2010, 13:37
Доброго времени суток.
Есть xml_object = new XML() следующей структуры:

<nick1 attr1="..." attr2="..." .......... attrN="nick1" />
<nick2 attr1="..." attr2="..." .......... attrN="nick2" />
<nick3 attr1="..." attr2="..." .......... attrN="nick3" /> и т.д.

Надо сделать следующее: Извне каждые 10 сек. поступает строка, равная либо "nick1", либо "nick2", либо "nick3". Надо, в зависимости от того что поступило, например, "nick2", взять из xml_object attr2, соответствующий поступившему извне "nick2", и иметь возможность с ним ( attr2 ) работать.

Подскажите пожалуйста, как?

AlinaSilaeva
19.02.2010, 15:31
Пример работы с XML

var xxxx:XML = new XML();
xxxx.ignoreWhite = true;

var urls:Array = new Array();
var captions:Array = new Array();

xxxx.onLoad = function(success) {
var datagrid:Array = this.firstChild.childNodes;
for(i=0;i<datagrid.length;i++) {
trace(datagrid[i].attributes.url);
trace(datagrid[i].attributes.caption);
}
}

xxxx.load("data.xml");


В файле data.xml

<?xml version="1.0" encoding="UTF-8"?>
<datagrids>
<datagrid url="page0.php" caption="Stranica 1" />
<datagrid url="page1.php" caption="Stranica 2" />
<datagrid url="page2.php" caption="Stranica 3" />
<datagrid url="page3.php" caption="Stranica 4" />
<datagrid url="page4.php" caption="Stranica 5" />
</datagrids>

alexcon314
19.02.2010, 16:21
Можно использовать ники, как значение аттрибута id в хмл-дереве.

<node id="nick1" attr1="..." attr2="..." ......./>
<node id="nick2" attr1="..." attr2="..." ......./>
<node id="nick3" attr1="..." attr2="..." ......./>

тогда поиск будет выглядеть примерно так:
var xml:XML = new XML();
// тут загружаем в объект xml ваши данные <node id="nick1" attr1="..." attr2="..." ...
// уж не знаю, откуда и как вы их берете

var nick = "nick2";// допустим, это принятая строка
var searсhVal = xml.idMap[nick].attributes.attr2;

Если я вас правильно понял. Ники в пределах хмл-я должны быть уникальны, само-собой.