www.webdeveloper.com
Results 1 to 2 of 2

Thread: .responseXML DOM Methods not working

  1. #1
    Join Date
    Jul 2010
    Posts
    66

    .responseXML DOM Methods not working

    I am requesting and getting in the response of the XML HTTP request object
    text that gets parsed correctly into XML (using Firefox). The
    Firebug debugger shows

    • I can traverse the document using firstChild, nextSibling properties
    • DOM methods for the document object are present, but are not returning expected results
      * I have the following code:

      var docFrag = XmlHttpRequestObject.responseXML;

      I then used it to get values from the debugger shown below



    docFrag.documentElement: [DomNode] ajaxresponse
    docFrag.getElementById("div1"): [null]
    docFrag.documentElement.getElementById: [undefined]
    docFrag.getElementById: [method (func ref)] getElementById()
    x = docFrag.firstChild: [DomNode] ajaxresponse
    x.nodeName: [string] "ajaxresponse"
    x.nodeType: [number] 1
    y = x.firstChild.firstChild: [DomNode] div
    y.nodeName: [string] "div"
    y.nodeType: [number] 1
    y.getAttribute: [method (func ref)] getAttribute()
    y.id: [undefined]
    y.getAttribute("id"): [string] "div1"


    The bracketed part is the Javascript type of the value returned

    Note that there is a node (element div) with an id attribute of div1,
    and there is a getElementById() method in the XML document object
    (docFrag), as found by getAttribute() method on the node, but
    getElementById() returns null.

    Can anyone resolve these inconsistent expectations?

    For additional information, I have provided the unformatted HTTP response
    text and the parsed XML content below.

    HTTP Response Text

    Code:
    <?xml version="1.0"?>
    <ajaxresponse><peptide><div id="div1" style="font:normal 90% 'Courier New',Tahoma,monospace;color:red;">&#xD;
    This is the content of Div1.  And just for variety, we include some complex&#xD;
    elements like a <b>table</b> and a style attribute.&#xD;
    <table><tr><th>Header 1 </th><th>Header 2&#xD;
    </th></tr><tr><td>A table </td><td>with three cells </td><td>in a row&#xD;
    </td></tr><tr><td colspan="3">Oh, and also with two rows, the 2nd with three column span&#xD;
    </td></tr></table></div></peptide><metal><div id="div2">&#xD;
    <p>&#xD;
    A more modest DIV with a text containing a paragraph element&#xD;
    </p></div></metal></ajaxresponse>
    XML as Parsed

    HTML Code:
    <ajaxresponse>
     <peptide>
      <div id="div1" style="font:normal 90% 'Courier New',Tahoma,monospace;color:red;">
       This is the content of Div1. And just for variety, we include some complex elements like a
       <b>table</b> and a style attribute.
       <table>
        <tr>
         <th>Header 1 </th>
         <th>Header 2 </th>
        </tr>
        <tr>
         <td>A table </td>
         <td>with three cells </td>
         <td>in a row </td>
        </tr>
        <tr>
         <td colspan="3">Oh, and also with two rows, the 2nd with three column span </td>
        </tr>
       </table>
      </div>
     </peptide>
     <metal>
      <div id="div2">
       <p>
       A more modest DIV with a text containing a paragraph element
       </p>
      </div>
     </metal>
    </ajaxresponse>

  2. #2
    Join Date
    Jul 2010
    Posts
    66

    BUMPED: Why isn't getElementById() working in responseXML of request object?

    I think my first post is a victim of too much information, which made my simple question seem overly complex.

    This is simple. I get the responseXML property back.

    I see it in my debugger. The property points to a DOM object. It has the method getElementById() among others. But the method is not returning the <div> DOM node with 'id' attribute, although it is there!

    Anyone?

Thread Information

Users Browsing this Thread

There are currently 1 users browsing this thread. (0 members and 1 guests)

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •  
HTML5 Development Center



Recent Articles