2012-09-25 29 views
0

我想使用jQuery调用ajax调用test.php文件,但它没有返回任何数据。你能让我知道我做错了什么吗?试图从使用jQuery的Ajax调用接收数据

<script src="//ajax.googleapis.com/ajax/libs/jquery/1.8.1/jquery.min.js"></script> 
<script> 
$(document).ready(function() { 
$("#submit").click(function(){ 
    $.ajax({  
     type: "POST", 
     url: "http://192.168.1.21/opencart1/upload/admin/view/template/module/test.php", 
     data: $("#url").serialize(), 
     success: function(msg) { 
      alert(data); 
      document.getElementById("pollcontent").innerHTML = msg; 
     } 
    }); 
}) 
}); 
     </script> 


     <div class="content"> 
     <form id="theform"> 
      <input type="text" name="url" value="" id="url" /> 
      <input type="button" name="submit" value="submit" id="submit"/> 
      </form> 
      <div id="pollcontent"></div> 

这是test.php的文件:

<?php 
$abc="hi"; 
echo $abc; 
?> 
+0

您正在提醒数据。我认为你应该提醒'msg'作为服务器的响应。 – JoeFletch

+0

是不是在你的'success'的'alert(data)'语句或'document ...'语句中返回_data_? – JoeFletch

+0

我也提醒信息,但仍然不起作用 – user1515728

回答

0

更改成功以下。

success: function(msg) { 
     alert(msg); 
     document.getElementById("pollcontent").innerHTML = msg; 
    } 

data未成功函数中定义。您应该使用msg(或将msg更改为data

+0

仍然不能正常工作 – user1515728

+0

我没有收到提示 – user1515728

+0

您使用的是开发者工具吗?检查“网络”选项卡,查看服务器的响应是否有问题。还要检查'Console'来查看是否有任何Javascript错误。 – JoeFletch

0

实际上,在ajax请求中,您尝试访问不属于您的域或服务器ip的url。这对于ajax请求无效。

尝试你的服务器网址,你会得到成功。

0

您正在尝试POST到远程服务器,这意味着您将需要在您的PHP响应中允许跨源资源共享(CORS)。这可以通过添加一个允许所有CORS头容易地实现:

<?php 
    header("Access-Control-Allow-Origin: *"); 
    $abc="hi"; 
    echo $abc; 
?>