2013-02-14 3 views
1

Я пытаюсь использовать ajax jQuery для вызова скрипта php onload. Этот скрипт вернет xml из веб-службы url, проанализирует его, а затем отобразит биты и фрагменты в тег div при загрузке страницы (onload). Я в порядке с php, когда дело доходит до использования форм, но получение сценариев php для запуска onload не работает для меня. Может кто-то, пожалуйста, просмотрите мой код и дайте мне свой совет? Заранее спасибо.jQuery вызов php script onload

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); 
    }); 


    }); 

}); 

Я не добавлял мой PHP-код, так как я был уверен, что это не было причиной моего разочарования.

+1

ли проделанных или терпят неудачу событий, которые инициированы? – Taz

+0

Событие «done» запускалось, если я заменяю «this.responseText» такими строками, как успешный или неудачный, но ввод «this.responseText» вызывает неопределенный. – JaPerk14

+0

does word_day.php существует в вашем веб-корне? – kufudo

ответ

1

Вам не нужны эти два обработчика, только один:

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

}); 

Как было это вы пытались создать один обработчик, когда обработчик выстрелил, который никогда не будет работать.

Edit:

Ваш сделано/не годен часть должна выглядеть следующим образом:

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

Я пробовал это, но я все еще не знаю. Я предполагаю, что я не должен использовать this.responseText. – JaPerk14

+0

Да, правильно. Смотрите мое редактирование ... –

+0

Удивительный! это сработало. Не могли бы вы помочь мне понять, почему мне пришлось добавлять эти параметры, чтобы заставить его работать? – JaPerk14

Смежные вопросы