Я пытаюсь проанализировать данные XML.И успешно, это сработало.Тем не менее, результат очень смешанный, потому что цикл не работает должным образом.
Моя проблема в том, что я не знаю, как выполнить цикл в определенном теге.Например,
<item>
<word>aaa</word>
<sup_no>0</sup_no>
<pos>nnn</pos>
<sense>
<sense_order>1</sense_order>
<definition>xxx</definition>
<translation>
<trans_lang>xxx</trans_lang>
<trans_word>xxx</trans_word>
<trans_dfn>xxx</trans_dfn>
</translation>
</sense>
<sense>
<sense_order>2</sense_order>
<definition>yyy</definition>
<translation>
<trans_lang>yyy</trans_lang>
<trans_word>yyy</trans_word>
<trans_dfn>yyy</trans_dfn>
</translation>
</sense>
</item>
<item>
<word>aaa</word>
<sup_no>0</sup_no>
<pos>nnn</pos>
<sense>
<sense_order>1</sense_order>
<definition>xxx</definition>
<translation>
<trans_lang>xxx</trans_lang>
<trans_word>xxx</trans_word>
<trans_dfn>xxx</trans_dfn>
</translation>
</sense>
<sense>
<sense_order>2</sense_order>
<definition>yyy</definition>
<translation>
<trans_lang>yyy</trans_lang>
<trans_word>yyy</trans_word>
<trans_dfn>yyy</trans_dfn>
</translation>
</sense>
<sense>
<sense_order>3</sense_order>
<definition>zzz</definition>
<translation>
<trans_lang>zzz</trans_lang>
<trans_word>zzz</trans_word>
<trans_dfn>zzz</trans_dfn>
</translation>
</sense>
</item>
Я использую $().each(function(){});
для item
.Но я использую $().find().text()
для получения данных.И это все.Я понятия не имею, как зациклить внутри конкретного.Как двойной цикл или даже тройной цикл, если это необходимо.
Мой код JavaScript:
$(obj).each(function(){
result += ($(this).find("word").text()
+"<span class='pos'>("+$(this).find("pos").text()+")</span> "
+"<span>"+$(this).find("sense_order").text()+"</span> "
+"<span>"+$(this).find("trans_word").text()+"</span>"
+"<div>"+$(this).find("trans_dfn").text()+"</div><br>");
});
Он просто печатает одним способом (вверх-вниз).Не могли бы вы объяснить, как это работает для меня?