我这里有这个XML文件。
<?xml version="1.0" encoding="UTF-8"?>
<xml>
<word>
<threeletter>RIP</threeletter>
<threeletter>PIE</threeletter>
<fourletter>PIER</fourletter>
<fourletter>RIPE</fourletter>
<fiveletter>SPIRE</fiveletter>
<sixletter>SPIDER</sixletter>
</word>
<word>
<threeletter>SUE</threeletter>
<threeletter>USE</threeletter>
<fourletter>EMUS</fourletter>
<fourletter>MUSE</fourletter>
<fiveletter>SERUM</fiveletter>
<sixletter>RESUME</sixletter>
</word>
</xml>
然后我将加载它们并在页面加载完成后将这些单词存储在一个名为word的数组中
$(document).ready(function() {
$.ajax
({
url: "dictionary.xml",
success: function( xml )
{
$(xml).find("word").each(function()
{
words.push($(this).text());
});
}
});
})
然后当我访问alert(word[0])
的每个内容时,它会向我显示此结果
RIP
PIE
PIER
RIPE
SPIRE
SPIDER
所以我假设单词[0]是这样的,word[0] = "RIP PIE PIER RIPE SPIRE SPIDER "
但是当我这样做时“
var x = word[0].split(" ");
alert(x[0]);
它没有给我“RIP”这个词
知道为什么会这样吗?我想要删除words[0]
中的所有单词(来自xml),然后拆分这些单词并将这些单词存储在一个数组中,但似乎无法理解为什么?
答案 0 :(得分:1)
可能是这样的
$.ajax({
url: 'dictionary.xml',
async: false,
success: function(xml) {
$(xml).find("word").each(function(index) {
words[index] = [];
$(this).children().each(function() {
words[index].push($(this).text());
});
});
},
dataType: 'XML'
});
console.log(words[0]);
console.log(words[1]);