Проблема в jQuery и XmlHttpRequest - PullRequest
       11

Проблема в jQuery и XmlHttpRequest

0 голосов
/ 01 декабря 2009

Я пытаюсь вызвать страницу PHP с помощью XmlHttpRequest (AJAX). Моя проблема в том, что у меня есть jQuery (javascript), включенный в мою страницу PHP, например:

<script language="javascript" src="jquery.js"></script>
<script language="javascript">
   // my jquery code here
</script>

Когда я вызываю страницу PHP с помощью XmlHttpRequest, она терпит неудачу! То есть ответ показывает только содержимое PHP, но jQuery не работает! Когда я открываю эту страницу PHP напрямую, она работает.

Итак, как я могу решить эту проблему?

Ответы [ 3 ]

2 голосов
/ 01 декабря 2009

Возможно, у вас есть такой код jquery:

$(document).ready(
      function() { //something magic }
);

На самом деле: он не сработает, если вы загрузите его через AJAX.

Чтобы запустить его, вам просто нужно удалить часть $(document).ready.

Вы также можете прочитать обсуждение этого вопроса .

0 голосов
/ 08 декабря 2010

Ваши вызовы ajax должны вызывать php-файл, который выводит только json. Тогда ваш обработчик успеха ajax может использовать этот json для запуска любого необходимого вам javascript

--ajax.php -- no JS or jQuery allowed here, just echo json
<?php
echo json_encode(array('message'=> 'Ajax is fun'));
?>

--page.html
$.get('ajax.php', function(data) {
  console.log('Ajax call returned', data.message);
})
0 голосов
/ 01 июня 2010

Javascript не может быть загружен с помощью вызова xmlHttpRequest, так как javascript регистрируется во время загрузки страницы, вам нужно загрузить весь javascript во время начальной загрузки

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...