jQuery help - 将XML解析为数组

Phi*_*tin 1 xml arrays jquery parsing http

我目前正在开发一种HTML游戏,用户可以拖动项目并将其放入正确的类别中.类别及其项目在XML文档中定义.

我的XML格式:

<config>
<game>
    <title>Dementia</title>
        <cat>
            <catTitle>Mild</catTitle>
            <item>mild-1</item>
            <item>mild-2</item>
            <item>mild-3</item>
        </cat>
        <cat>
            <catTitle>Moderate</catTitle>
            <item>Moderate-1</item>
            <item>Moderate-2</item>
            <item>Moderate-3</item>
        </cat>
        <cat>
            <catTitle>Severe</catTitle>
            <item>Severe-1</item>
            <item>Severe-2</item>
        </cat>
</game>
Run Code Online (Sandbox Code Playgroud)

我想使用jQuery将这个XML文件解析为基于其类别的单独数组.

例如:

array1 = [轻度-1,轻度-2,轻度-3]

array2 = [Moderate-1,Moderate-2,Moderate-3]等......

这将允许我根据类别数组检查被删除项目的属性是否正确.

如果您对如何做到这一点有任何其他想法,请建议.

先感谢您.

Sud*_*oti 5

尝试,像这样:

$(document).ready(function() {
    var arr = [];
    $(xml).find("cat").each(function(idx, v) {
        arr[idx] = [];
        $(v).find("item").each(function( i , vi) {
            arr[idx].push( $(vi).text() );
        });             
    });
    console.log( arr );
});
Run Code Online (Sandbox Code Playgroud)

将返回响应如下:

[
    ["mild-1", "mild-2", "mild-3"]
, 
    ["Moderate-1", "Moderate-2", "Moderate-3"]
, 
    ["Severe-1", "Severe-2"]
]
Run Code Online (Sandbox Code Playgroud)

所以你可以访问单个数组,

console.log( arr[0] ); //for first, and so on..
Run Code Online (Sandbox Code Playgroud)