How to POST using .load() ? - works in IE and Safari not in Firefox

How to POST using .load() ? - works in IE and Safari not in Firefox

The documentation for .load() and .get() says that if a map (JSON object) is passed, the request will be treated as a POST not a GET.  This is what I have done in my code below.  It works in IE and Safari but not in Firefox:

  1. var dataJSON = {};
  2. // Scrape text input field names and corresponding values into the JSON object
  3. $("#MyForm input:text").each(function(index, element){
  4.     dataJSON[$(element).attr("name")] = $(element).val();
  5. });
  6. $("#Results_Container").load( "/Product_Registration.html #Results", dataJSON, function(){
  7.     console.log("The results are loaded");
  8. });


With the above code I am able to POST successfully in IE and Safari.  The backend recognizes the data as parameters on the HttpRequest.  However, my problem is with Firefox...

The POST shows up in Firebug along with the parameters that I would expect.  However, the "source" for the POST in Firebug (Net tab > POST > Post tab) seems to be missing some values.

On a separate page I am submitting identical data with a regular form POST, and I see the following values:

  1. Content-Type: application/x-www-form-urlencoded 
  2. Content-Length: 98

  3. hiddenPromotionCode=2455&hiddenQueryText=AB104&incentiveCnty=us&promotionCode=2455&QueryText=AB104

...while for my jQuery POST via .load() I only get this:

  1. hiddenPromotionCode=2455&hiddenQueryText=AB104&incentiveCnty=us&promotionCode=2455&QueryText=AB104

This might not have anything to do with the problem, but I am grasping to find out why Firebug shows the data I am submitting in the POST, but the backend does not recognize the presence of any parameters on the HttpRequest (Firefox only).

Any ideas?