2

XML を反復処理しています。子要素の 1 つがGroupNameで、XML 文字列/ファイル内で一意ではありません。そのため、必要に応じて、これらのタグのinnertextのさまざまな (一意の) 出現を配列に入れようとしています。GroupName

<GroupName></GroupName>
<GroupName></GroupName>
<GroupName>VIII</GroupName>
<GroupName>Date and signature</GroupName>
<GroupName>Date and signature</GroupName>
<GroupName>Date and signature</GroupName>
<GroupName>Date and signature</GroupName>
<GroupName>VII</GroupName>

この特定のケースでGroupNamesは、[空文字列]、'VII'、'VIII'、'Date and signature' です。

jQuery を使用してすべてのアラートを表示するGroupNamesと、すべてが表示されます。

$xmlDoc.find('GroupName').each(function () {
    alert($(this).text();
});

ただし、indexOf()一意の値の配列を構成するために使用しようとすると、そのうちの1つがスキップされるようです!

$xmlDoc.find('GroupName').each(function () {
$groupName = ($(this).text().length == 0) ? 'empty' : $(this).text();
    if (groupnames.indexOf($groupName) < 0) {
        groupnames.push($groupName);
    }
});

この場合、「空」、「VIII」、「日付と署名」が得られます。「VII」はなぜか失われていて、その理由がわかりません。

4

0 に答える 0