0

私は XML に非常に慣れていないため、親ノード名を取得しようとして問題が発生しています

<?xml version="1.0" encoding="UTF-8" ?>
<response uri="/crm/private/xml/Contacts/getSearchRecords">
    <result>
        <Contacts>
            <row no="1">
                <FL val="CONTACTID">545094000000127015</FL>
                <FL val="First Name"><![CDATA[Roger]]></FL>
                <FL val="Last Name"><![CDATA[Rabbit]]></FL>
                <FL val="ACCOUNTID">12345678910</FL>
                <FL val="Account Name"><![CDATA[Warner Bros Inc]]></FL>
            </row>
        </Contacts>
    </result>
</response>

私のJavascriptでは、この方法で子のnodeValuesを取得できます

parser = new DOMParser();
xmlDoc = parser.parseFromString(req.responseText, "text/xml");
//I also have the windows one but no need to see it   
var length = xmlDoc.getElementsByTagName("FL").length;
for (var i = 0; i < length; i++) {
    alert(xmlDoc.getElementsByTagName("FL")[i].childNodes[0].nodeValue);
}

私は試した:

alert(xmlDoc.getElementsByTagName("FL")[i].nodeValue);
alert(xmlDoc.getElementsByTagName("FL")[i].childNodes[0].parentNode.nodeValue);
alert(xmlDoc.getElementsByTagName("FL")[i].childNodes[0].parentNode.nodeName);

などですが、何も機能していないようです。Nullまたは未定義のいずれかになります。私は基本的に名前 (First Name、ACCOUNTID など) を取得したいので、switch ステートメントを実行してノード値を適切な場所に配置できます。

ご協力ありがとうございました!

4

1 に答える 1