2011-08-24 53 views
0

我一直在寻找一些关于如何在jQuery中使用ajax的介绍性示例,但是当我在服务器上尝试这些示例时,它们似乎不起作用。简单的jQuery-Ajax-PHP示例

这里是在HTML文件中的代码,我有:

<html> 
<head> 
<script src="jquery.js"></script> 
<script type="text/javascript"> 
    $(function(){ 
    $.get("ajax/json-statistics.php", function(data){ 
     alert("hello");}); 
}); 

</script> 
</head> 
<body> 
</body> 
</html> 

下面是我对PHP文件中的代码:

<?php 
$arr = array('a' => 1, 'b' => 2, 'c' => 3, 'd' => 4, 'e' => 5); 
echo json_encode($arr); 
?> 

这两个文件位于同一目录。当我转到html页面时,它只是空白,但我期待一个警告框出现,其中包含文本hello。

+0

你有没有把'jquery.js'有太多? – zerkms

+1

当两个文件都在同一个目录中,那么为什么你提到了 '$ .get(“ajax/json-statistics.php” statistics.php“,...' – Abhishek

+0

雅对不起,我修正了这个问题,但它仍然不起作用 – kpatelio

回答

1

我发现我到底该工作

<script language="javascript" src="https://ajax.googleapis.com/ajax/libs/jquery/1.6.2/jquery.min.js"></script> 
<script LANGUAGE="JavaScript"> 
$(document).ready(function(){ 
$.get("ajax/json-statistics.php", function(data){ 
    alert("hello");}, "json"); 
}); 
</script> 
+0

它仍然不能在我的最后。我运行的PHP 5.3.3安装的Ubuntu服务器btw。 – kpatelio

+0

检查请求的页面路径是否正确。还要将返回类型指定为“json”。我努力改变你的json-statistics.php代码,并且在这里工作得很好。 – mithunsatheesh

1

检查路径 - 他们是相对,因此它们指向浏览器应该是在正确的位置(也许他们已经是文件 - 我们做没有足够的数据)。

如果仍然无效,可能还有其他问题。例如。也许你关闭了JavaScript?

检查请求是否已发送以及是否存在其他问题的最好方法是使用一些调试工具。我建议Chrome的开发人员工具 Firefox的Firebug - 与他们一起检查文件和数据请求是否发送到正确的位置,并检查是否有任何其他JavaScript错误。

0

尝试:

<?php 
header('Cache-Control: no-cache, must-revalidate'); 
header('Expires: Mon, 26 Jul 1997 05:00:00 GMT'); 
header('Content-type: application/json'); 

$arr = array('a' => 1, 'b' => 2, 'c' => 3, 'd' => 4, 'e' => 5); 
echo json_encode($arr); 
?>