Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > comp.lang.javascript > #27345

Re: XMLHttpRequest and Google Chrome

From Robbie Brown <rob@example.com>
Newsgroups comp.lang.javascript
Subject Re: XMLHttpRequest and Google Chrome
Date 2015-04-13 11:50 +0100
Organization A noiseless patient Spider
Message-ID <mgg70i$19a$1@dont-email.me> (permalink)
References <mgedt0$ki9$1@dont-email.me> <mgg2bc$1olt$1@adenine.netfront.net>

Show all headers | View raw


On 13/04/15 10:30, Martin Honnen wrote:
> Robbie Brown wrote:
>
>> and here's a function I call when a page is loaded
>>
>> function getCart(){
>>      var req = newXMLHttpRequest();
>>       req.onreadystatechange = getReadyStateHandler(req, updateCart);
>>       req.open("POST", "common/ManageCart?cartmode=crtget", true);
>>       req.setRequestHeader("Content-Type",
>> "application/x-www-form-urlencoded");
>>       req.send("");
>> }
>>
>> updateCart uses javascript DOM to update the innerHTML property of a
>> <div>
>>
>> The error in the Chrome javascript console is
>>
>> Uncaught TypeError: Cannot set property 'innerHTML' of null
>
> Please show the lines of code for which you get the error, the posted
> code does not set any innerHTML. And we also need to see the
> implementation of getReadyStateHandler.
>

Here is the code, please remember that this is a Chrome issue only and 
the code works fine in other browsers

function getReadyStateHandler(req, responseXmlHandler) {
   return function () {
     if (req.readyState == 4) {
       if (req.status == 200) {
         responseXmlHandler(req.responseXML);
       }
       else {
         alert("HTTP error: "+req.status);
       }
     }
   }
}

function updateCart(cartXML) {
     var cartsnapshot = document.getElementById("cartsnapshot");
     cartsnapshot.innerHTML = getCartSnapshot(cartXML);
}


function getCartSnapshot(cartXML){
     //get the total
     var cartTotal = 
cartXML.getElementsByTagName("cart")[0].getAttribute("cartTotal");
     var total = 
cartXML.getElementsByTagName("cart")[0].getAttribute("total");
     var lines = cartXML.getElementsByTagName("line");

     var cartSnapshot = ("<table cellpadding='2' cellspacing='0' 
border='0' style='font-size:0.85em;'>");
     if(cartTotal == 0){
         cartSnapshot += "<tr><td>Your cart is empty</td></tr></table>";
     }
     else{
         for(var i = 0; i < lines.length; i++){
             var currentLine = lines[i];
             cartSnapshot += "<tr><td>";
             cartSnapshot += currentLine.getAttribute("itemCount");
             cartSnapshot += " x " + currentLine.getAttribute("itemId") 
+ ": ";
             cartSnapshot += currentLine.getAttribute("itemName");
             cartSnapshot += "</td></tr>";
         }

         if(cartTotal > 0){
             cartSnapshot += "<tr><td><hr/>";
             cartSnapshot += "<td></tr>";
             cartSnapshot += "<tr><td>current cart total: <span 
class='price'>&pound;" + total + "</span> ";
             cartSnapshot += "<td></tr>";
             //hard rule
             cartSnapshot += "<tr><td><hr/>";
             cartSnapshot += "<td></tr>";
             //navigation
             cartSnapshot += "<tr><td align='left'>";
             cartSnapshot += "<a href='Login?mode=checkout'>[checkout] 
</a> <a href='common/cartView.jsp'> [view] <a 
href='/CartLoader?mode=save'> [save] </a>";
             cartSnapshot += "<td></tr>";
         }
         cartSnapshot += "</table>";
     }
     return cartSnapshot;
}



-- 
Not floundering ... just fishing

Back to comp.lang.javascript | Previous | Next — Previous in thread | Next in thread | Find similar | Unroll thread


Thread

XMLHttpRequest and Google Chrome Robbie Brown <rob@example.com> - 2015-04-12 19:36 +0100
  Re: XMLHttpRequest and Google Chrome JJ <jj4public@vfemail.net> - 2015-04-13 12:33 +0700
    Re: XMLHttpRequest and Google Chrome Robbie Brown <rob@example.com> - 2015-04-13 07:41 +0100
  Re: XMLHttpRequest and Google Chrome Martin Honnen <mahotrash@yahoo.de> - 2015-04-13 11:30 +0200
    Re: XMLHttpRequest and Google Chrome Robbie Brown <rob@example.com> - 2015-04-13 11:50 +0100
      Re: XMLHttpRequest and Google Chrome Tim Streater <timstreater@greenbee.net> - 2015-04-13 13:17 +0100
        Re: XMLHttpRequest and Google Chrome Robbie Brown <rob@example.com> - 2015-04-13 13:34 +0100
          Re: XMLHttpRequest and Google Chrome Tim Streater <timstreater@greenbee.net> - 2015-04-13 14:26 +0100
          Re: XMLHttpRequest and Google Chrome Martin Honnen <mahotrash@yahoo.de> - 2015-04-13 16:15 +0200
            Re: XMLHttpRequest and Google Chrome Robbie Brown <rob@example.com> - 2015-04-13 16:03 +0100
              Re: XMLHttpRequest and Google Chrome Martin Honnen <mahotrash@yahoo.de> - 2015-04-13 19:26 +0200
                Re: XMLHttpRequest and Google Chrome "Christoph M. Becker" <cmbecker69@arcor.de> - 2015-04-13 20:23 +0200
          Re: XMLHttpRequest and Google Chrome Ben Bacarisse <ben.usenet@bsb.me.uk> - 2015-04-13 15:50 +0100
            Re: XMLHttpRequest and Google Chrome Robbie Brown <rob@example.com> - 2015-04-13 16:10 +0100
              Re: XMLHttpRequest and Google Chrome "Christoph M. Becker" <cmbecker69@arcor.de> - 2015-04-13 17:46 +0200
                Re: XMLHttpRequest and Google Chrome Robbie Brown <rob@example.com> - 2015-04-13 17:28 +0100
                Re: XMLHttpRequest and Google Chrome "Christoph M. Becker" <cmbecker69@arcor.de> - 2015-04-13 19:14 +0200
                Re: XMLHttpRequest and Google Chrome Tim Streater <timstreater@greenbee.net> - 2015-04-13 18:29 +0100
                Re: XMLHttpRequest and Google Chrome Robbie Brown <rob@example.com> - 2015-04-13 18:59 +0100
                Re: XMLHttpRequest and Google Chrome "Christoph M. Becker" <cmbecker69@arcor.de> - 2015-04-13 20:29 +0200
                Re: XMLHttpRequest and Google Chrome Tim Streater <timstreater@greenbee.net> - 2015-04-13 19:34 +0100
                Re: XMLHttpRequest and Google Chrome Robbie Brown <rob@example.com> - 2015-04-13 20:11 +0100
                Re: XMLHttpRequest and Google Chrome "Evertjan." <exxjxw.hannivoort@inter.nl.net> - 2015-04-13 20:44 +0200
                Re: XMLHttpRequest and Google Chrome Robbie Brown <rob@example.com> - 2015-04-13 20:21 +0100
                Re: XMLHttpRequest and Google Chrome Denis McMahon <denismfmcmahon@gmail.com> - 2015-04-14 12:43 +0000
                Re: XMLHttpRequest and Google Chrome Robbie Brown <rob@example.com> - 2015-04-14 14:50 +0100
                Re: XMLHttpRequest and Google Chrome Thomas 'PointedEars' Lahn <PointedEars@web.de> - 2015-04-14 22:51 +0200
                Re: XMLHttpRequest and Google Chrome Thomas 'PointedEars' Lahn <PointedEars@web.de> - 2015-04-13 22:28 +0200
  Re: XMLHttpRequest and Google Chrome Robbie Brown <rob@example.com> - 2015-04-13 19:23 +0100
    Re: XMLHttpRequest and Google Chrome Tim Streater <timstreater@greenbee.net> - 2015-04-13 19:38 +0100
  Re: XMLHttpRequest and Google Chrome "Leonardo Azpurua" <leonardo@exmvps.org> - 2015-04-13 17:36 -0430
  Re: XMLHttpRequest and Google Chrome Robbie Brown <rob@example.com> - 2015-04-14 11:35 +0100
  Re: XMLHttpRequest and Google Chrome Denis McMahon <denismfmcmahon@gmail.com> - 2015-04-14 11:37 +0000

csiph-web