我在网上看过一些例子,但我仍然在努力解决这个问题。 我想在“ indexDesc ”标记中获取“ descShort ”标记的值,然后显示“最后”中的值“ 标签?我见过人们使用箭头>但我还是迷路了。
<indices>
<index>
<code>DJI</code>
<exchange>NYSE</exchange>
<liveness>DELAYED</liveness>
<indexDesc>
<desc>Dow Jones Industrials</desc>
<descAbbrev>DOW JONES</descAbbrev>
<descShort>DOW JONES</descShort>
<firstActive></firstActive>
<lastActive></lastActive>
</indexDesc>
<indexQuote>
<capital>
<first>11144.57</first>
<high>11153.79</high>
<low>10973.92</low>
<last>11018.66</last>
<change>-125.9</change>
<pctChange>-1.1%</pctChange>
</capital>
<gross>
<first>11144.57</first>
<high>11153.79</high>
<low>10973.92</low>
<last>11018.66</last>
<change>-125.9</change>
<pctChange>-1.1%</pctChange>
</gross>
<totalEvents>4</totalEvents>
<lastChanged>16-Apr-2010 16:03:00</lastChanged>
</indexQuote>
</index>
<index>
<code>XAO</code>
<exchange>ASX</exchange>
<liveness>DELAYED</liveness>
<indexDesc>
<desc>ASX All Ordinaries</desc>
<descAbbrev>All Ordinaries</descAbbrev>
<descShort>ALL ORDS</descShort>
<firstActive>06-Mar-1970</firstActive>
<lastActive></lastActive>
</indexDesc>
<indexQuote>
<capital>
<first>5007.30</first>
<high>5007.30</high>
<low>4934.00</low>
<last>4939.40</last>
<change>-67.9</change>
<pctChange>-1.4%</pctChange>
</capital>
<gross>
<first>5007.30</first>
<high>5007.30</high>
<low>4934.00</low>
<last>4939.40</last>
<change>-67.9</change>
<pctChange>-1.4%</pctChange>
</gross>
<totalEvents>997</totalEvents>
<lastChanged>19-Apr-2010 17:02:54</lastChanged>
</indexQuote>
</index>
</indices>
答案 0 :(得分:1)
“&gt;”是一个选择器;您可以在此处查看所有可用的内容:selectors。 “div&gt; span”将找到所有具有div作为父母的跨度。这与“div span”不同,它将找到所有跨越div的后代。
var values = [];
$(yourXml).find('index').each(function () {
var self = $(this);
values.push({
descShort: self.find('descShort:first').text(),
capitalLast: self.children('capital').children('last').text(),
grossLast: self.children('gross').children('last').text()
});
});
values
现在是一个对象数组,每个对象都有descShort,captialLast和grossLast属性。
不幸的是我无法测试我的代码。