STiTCHiCKED
STiTCHiCKED

Reputation: 526

Ajax POST never gets sent?

I'm having an issue with my ajax POST for some reason the POST is never made! can't for the life of me work it out?

yeah so I used the network debug tool in firefox to check the POST request but the POST request never gets made..

The function is definitely getting called too as I have added an alert alert("start") to the beginning of the function which does run.

AJAX

<script>
function updateContentNow(pid2, status2) {
    var mypostrequest = new ajaxRequest();
    mypostrequest.onreadystatechange = function() {
        if (mypostrequest.readyState == 4) {
            if (mypostrequest.status == 200 || window.location.href.indexOf("http") == -1) {
                document.getElementById("livestats").innerHTML = mypostrequest.responseText;
            } else {
                alert("An error has occured making the request");
            }
        }
    }
    var parameters = "cid=clientid&pid=6&statusinfo=approve";
    mypostrequest.open("POST", "http://mydomain.com.au/content-approval/ajax.php", true);
    mypostrequest.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
    mypostrequest.send(parameters);
}
</script>

UPDATED WORKING: thanks peps..

<script>
function updateContentNow(pid2,status2)
{
var mypostrequest=new XMLHttpRequest()
mypostrequest.onreadystatechange=function(){
 if (mypostrequest.readyState==4){
  if (mypostrequest.status==200 || window.location.href.indexOf("http")==-1){
   document.getElementById("livestats").innerHTML=mypostrequest.responseText;
  }
  else{
   alert("An error has occured making the request");
  }
 }
}
var parameters="cid=<?=$clientID?>&pid="+pid2+"&statusinfo="+status2;
mypostrequest.open("POST", "http://mydomain.com.au/content-approval/ajax.php", true);
mypostrequest.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
mypostrequest.send(parameters);
}
</script>

Upvotes: 1

Views: 154

Answers (1)

geraldo
geraldo

Reputation: 552

Are you using some external Ajax classes, at least ajaxRequest() object doesn't exist in plain JavaScript. Try to substitute this line

var mypostrequest = new ajaxRequest();

by that:

var mypostrequest=new XMLHttpRequest();

Then even calling your method with

updateContentNow("","");

at least makes the POST request as you easily can see with Firebug.

Upvotes: 1

Related Questions