Yahoo Прогноз погоды xml

У меня проблемы с разбором API погоды Yahoo с помощью javascript. У меня все работает, но я не могу понять, как получить данные за несколько дней. Я могу получить первый, но не знаю, как получить другие атрибуты.

Вот часть XML:

<yweather:forecast day="Sun" date="24 Feb 2013" low="19" high="31" text="Few Snow Showers" code="14"/>
<yweather:forecast day="Mon" date="25 Feb 2013" low="24" high="35" text="Partly Cloudy" code="30"/>
<yweather:forecast day="Tue" date="26 Feb 2013" low="33" high="34" text="Rain/Snow Showers" code="5"/>
<yweather:forecast day="Wed" date="27 Feb 2013" low="31" high="35" text="Snow Showers" code="14"/>
<yweather:forecast day="Thu" date="28 Feb 2013" low="25" high="33" text="Few Snow Showers" code="14"/>

И этот код даст мне первый прогноз

forecastTag = findChild(findChild(effectiveRoot, "item"), "yweather:forecast");
day1 = forecastTag.getAttribute("low");

Итак, как мне получить данные за другие дни? Я пробовал обрабатывать yweather:forecast как массив [0], [1] и т. д., но это не сработало. Я много читал о синтаксическом анализе, но просто не могу понять. Я новичок в XML.

Спасибо С


person Stu    schedule 24.02.2013    source источник


Ответы (2)


Я понял.

obj.plus1 = request.responseXML.getElementsByTagName("forecast")[1].getAttribute("low");
person Stu    schedule 24.02.2013

Вам нужно получить это пространство имен xml через файл xml,

xmlhttp.responseXML.getElementsByTagNameNS('http://xml.weather.yahoo.com/ns/rss/1.0', 'forecast')[1].getAttribute("low");

person Yuan Fu    schedule 20.09.2017