JaPerk14
JaPerk14

Reputation: 1664

jQuery calling php script onload

I am trying to use jQuery's ajax to call a php script onload. This script will return xml from a url web service, parse through it, and then display bits and pieces of it into a div tag when the page loads (onload). I'm okay with php when it comes to using forms, but getting php scripts to run onload is not working for me. Could someone please look through my code and give me your advice? Thanks in advance.

HTML:

<!doctype html>
<html>
  <head>

    <title>Word of the Day</title>

    <script src="http://ajax.googleapis.com/ajax/libs/jquery/1.9.1/jquery.min.js"></script>
    <script src="code.js"></script>

  </head>
<body>

<h3>Word of the Day: </h3>
<div id="word_day"></div>

</body>
</html>

JavaScript:

$(document).ready(function() {

  $(window).load(function() {


    $.ajax({
      post: "GET",
      url: "word_day.php"
    }).done(function() {
      alert(this.responseText);
    }).fail(function() {
      alert(this.responseText);
    });


  });

});

I did not add my PHP code since I was pretty sure that it wasn't the cause of my frustration.

Upvotes: 1

Views: 10291

Answers (1)

Lee Taylor
Lee Taylor

Reputation: 7974

You don't need those two handlers, just one:

$(document).ready(function() 
{
    $.ajax(
    {
        post: "GET",
        url: "word_day.php"
    }).done(function() 
    {
        alert(this.responseText);
    }).fail(function() 
    {
        alert(this.responseText);
    });

});

As you had it you were trying to create one handler when the handler fired which was never going to work.

Edit:

Your done/fail part should look like:

}).done(function(data) 
{
    alert(data);
}).fail(function(jqXHR, textStatus, errorThrown) 
{
    alert(textStatus);
});

Upvotes: 2

Related Questions