jQuery和XmlHttpRequest中的问题

时间:2009-12-01 12:46:51

标签: jquery xmlhttprequest

我正在尝试使用XmlHttpRequest(AJAX)调用PHP页面。我的问题是我的PHP页面中包含jQuery(javascript),如下所示:

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

当我用XmlHttpRequest调用PHP页面时,它失败了!也就是说,响应只显示PHP内容,但jQuery不起作用!当我直接访问该PHP页面时,它可以正常工作。

那么,我该如何解决这个问题?

3 个答案:

答案 0 :(得分:2)

你可能有这样的jquery代码:

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

事实是:如果你通过AJAX加载它就不会触发。

要运行它,您只需删除$(document).ready部分。

您可能还会阅读a discussion about it

答案 1 :(得分:0)

由于在页面加载期间注册了javascript,因此无法通过xmlHttpRequest调用加载Javascript,您需要在初始加载期间加载所有javascript

答案 2 :(得分:0)

你的ajax调用应该调用一个只输出json的php文件。然后你的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);
})