【发布时间】:2011-02-03 12:30:23
【问题描述】:
我正在尝试从下面的 xml 中提取 StateLongName 和 StateShortName 值。
我知道必须有一种简单优雅的方式来使用 jQuery 来做到这一点。
<NewDataSet>
<Table>
<StateLongName>Alabama</StateLongName>
<StateShortName>AL</StateShortName>
</Table>
<Table>
<StateLongName>Alaska</StateLongName>
<StateShortName>AK</StateShortName>
</Table>
...elments removed for brevity
</NewDataSet>
这是我尝试过的。
将上面的 xml 加载到 Javascript 变量名 xml 中。
尝试#1
$(xml).find("TABLE").each(function()
{
var stateName = $(this).find("StateLongName").innerText;
var stateCode = $(this).find("StateShortName").innerText;
});
尝试 #1 没有找到任何东西,并且永远不会进入内部加载 stateName 和 stateCode 变量。
尝试#2
$(xml).find("StateLongName").each(function()
{
var stateName = $(this).find("StateLongName").innerText;
var stateCode = $(this).find("StateShortName").innerText;
});
尝试 #2 确实找到匹配项,但是 stateName 和 stateCode 未定义。
尝试#3
$(xml).find("StateLongName").each(function()
{
var stateName = $($(xml).find('StateLongName').parent()[0].innerHTML)[1].data;
var stateCode = $($(xml).find('StateLongName').parent()[0].innerHTML)[5].data;
});
尝试 #3 可行,但必须有更好的方法。请赐教。
感谢您的宝贵时间!
【问题讨论】:
-
忽略我的回答 - 我认为你的问题更笼统!