0
このサンプルXML応答を受け取り、このxmlの子ノードと子ノードの両方を解析しようとしています。 PrinおよびRoleオブジェクトは、主レコードのPrinIDが関連する子レコードのロールに設定される関連レコードを作成するために使用されます。xml javascriptを使用してchildrenNodesを解析する方法
私が抱えている課題は、子オブジェクトをループして、すぐに子レコードを解析することです。私が書いたコードは両方とも個別に行いますが、私は各ロールの関連レコードを作成できません。
同じロジックを使用してgetElementsByTagNameをRoleに変更すると、親オブジェクトとの関係なくこれらのレコードが解析されます。
2番目のループまたはイテレータを書き込んで、子レコードの役割をループしながらメインレコードのPrinID
を得ることができます。
<Prin>
<PrinName>John</PrinName>
<PrinID>12345</PrinID>
<Role>
<Code>1111</Code>
</Role>
<Role>
<Code>2222</Code>
</Role>
</Prin>
<Prin>
<PrinName>James</PrinName>
<PrinID>45678</PrinID>
<Role>
<Code>3333</Code>
</Role>
<Role>
<Code>4444</Code>
</Role>
</Prin>
var prinID="";
var prinList=prinDoc.getDocumentElement().getElementsByTagName("Prin");
for (var i=0;i<prinList.getLength();i++){
var childList=prinList.item(i).getChildNodes();
for (var j=0;j<childList.getLength();j++){
var childNode=childList.item(j);
if (childNode.getNodeName()=="PrinName"){
prinID=childNode=getTextContent();
}
}
}
ありがとうございました。あなたのロジックを使用して、正しい数の "Prin"オブジェクトを返すことができます。しかし、私はprinObject変数で未定義になっています。 getItem(i)は未定義を返し、Item(i)はnullを返します。助言がありますか? – Ernie