PDA

Просмотр полной версии : Eval при выводе XML


StaliX
25.02.2009, 02:13
Столкнулся с проблемой.

......
i=2
path_xml="fotoXML.firstChild.childNodes";
trace(eval(path_xml+".length")); // пишет количество нодов, т.е обрабатывается правильно
qwe=path_xml+"["+i+"].attributes.id";
trace(qwe); // выводит fotoXML.firstChild.childNodes[2].attributes.id
trace(fotoXML.firstChild.childNodes[2].attributes.id); // пишет значение id
trace(eval(qwe)); // пишет undefined
.....

В чем не прав? может выводить не eval? а тогда чем. Можно конечно вынести кусок из него

trace(eval(path_xml)[i].attributes.id)

Так работает. но хотелось бы чтоб весь путь был в переменной.
Кто знает хелп.

Fatality
25.02.2009, 02:24
Не пойму, зачем вам этот бред ? А проблема решается так:
qwe=path_xml+"."+i+".attributes.id";
т.е fotoXML.firstChild.childNodes.2.attributes.id - такая бредовая запись понятна функции eval, а стандартное обращение через [] - нет;

StaliX
25.02.2009, 02:29
Спасибо за быстрый ответ. Че-то сам не додумался. еще раз спс