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 応答で Cross Origin Resource Sharing (CORS) を許可する必要があります。これは、allow all CORS ヘッダーを追加することで簡単に実現できます。

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

実際には、ajax リクエストで、ドメインまたはサーバー IP ではない URL にアクセスしようとしています。これは ajax リクエストには無効です。

成功するサーバーの URL を試してください。

于 2012-09-26T04:59:21.273 に答える
0

成功を次のように変更します。

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

data成功関数では定義されていません。を使用するmsg(または変更msgするdata)必要があります。

于 2012-09-25T19:29:11.247 に答える