2016-02-29 88 views
3

我有一个单击按钮时调用的函数的问题。jQuery POST按钮单击不工作

的Javascript:

function sendData(){ 
    $.post("send.php", 
     { 
      type: "A", 
      val: "answer" 
     }, 
     function(data,status){ 
      alert(data); 
     }); 
} 

HTML:

<div id="testButton" onclick="sendData();">click</div> 

PHP:

<?php 
    foreach ($_POST as $key => $value) 
    { 
     echo $value 
    } 
?> 

我的数据发布到PHP页面,并期望收到数据。 javascript应该在成功调用时提醒数据。

当按钮被点击时,没有任何反应。

请有人看看代码是否有问题。

+0

检查您的控制台..有任何错误? –

+0

检查浏览器中开发人员工具的网络选项卡。请求是否发送到服务器?响应中的内容是什么,尤其是在响应头中? – eztam

+0

@eztam是的请求发送和0.62kb收到回来。 – DaZa

回答

1

您的代码返回:

语法错误,意外 '}',希望 '' 或 ';'

你刚才到底echo $value后加分号;,应该是:

<?php 
    foreach ($_POST as $key => $value) 
    { 
     echo $value; 
    } 
?> 

全码:

<html> 
    <head> 
     <script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> 

     <script> 
      function sendData(){ 
      $.post("send.php", 
       { 
        type: "A", 
        val: "answer" 
       }, 
       function(data,status){ 
        console.log(data); 
       }); 
      } 
     </script> 
    </head> 
    <body> 
     <div id="testButton" onclick="sendData();">click</div> 
    </body> 
</html> 

希望这有助于。

+0

谢谢,我添加了分号。还是行不通。感谢您指出。 – DaZa

+0

检查您的控制台,它应该工作,它是我的机器上的本地工作 –

+0

@ user2216919我已将完整的代码添加到答案中,您可以检查它。 –

1

你只是缺少一个分号在send.php文件

<?php 
foreach ($_POST as $key => $value) 
{ 
    echo $value; 
} 
?> 
+0

谢谢,我已修复此问题。但它仍然不起作用 – DaZa

+0

我测试了您的代码(添加了分号)并且它在我身边工作 –

+0

由于网络限制,它在桌面上不起作用,使用移动数据的情况也是如此。 – DaZa