0

我正在尝试使用 jQuery 对 test.php 文件进行 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;
?>
4

3 回答 3

0

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

<?php
  header("Access-Control-Allow-Origin: *");
  $abc="hi";
  echo $abc;
?>
于 2012-09-26T05:12:05.343 回答
0

将成功改为如下。

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

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

于 2012-09-25T19:29:11.247 回答
0

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

尝试您的服务器网址,您将获得成功。

于 2012-09-26T04:59:21.273 回答