尝试使用jquery .post()发送数据

时间:2013-04-26 08:36:02

标签: php javascript jquery html

在insert.php中我有以下

   <script type="text/javascript"        src="http://ajax.googleapis.com/ajax/libs/jquery/1.4.2/jquery.min.js">
   <script type="text/javascript" src="includes/js/jquery.form.js"></script>
   <script type="text/javascript">




  $(document).ready(function() {
  $(".like").click(function() {
  var data = $(this).attr('data-id');
  $.post("data.php", {'name': data}, function(response){
  $('#dv').html(response);
  });
  });
 });

// ...

 </script>
<!-- ... -->
     <?
 if (!is_bool($result) && !is_null($result)){
 while($row = mysql_fetch_array($result))
 {

 ?>
    <? $id = $row['uniqueid'];?>
    <? echo "<br>ID: " . $row['uniqueid'];?> 
    <? echo "<br>Name: " . $row['surname']; ?>  
    <? echo "<br><a href class=like id=buton data-id='$id'> Like (" . $row['likes'] . ")               </a>"; ?> 
    <? echo "<br><br>"; ?>

<!-- ... -->

在data.php我有

  <script type="text/javascript"        src="http://ajax.googleapis.com/ajax/libs/jquery/1.4.2/jquery.min.js">
  <script type="text/javascript" src="includes/js/jquery.form.js"></script>
  <script type="text/javascript">
  alert("<? echo $_POST['name']; ?>");
  </script>

我解决了一些我被告知错误的事情,但它仍然无效。警告框为空白。请帮忙。谢谢。

1 个答案:

答案 0 :(得分:1)

这是完全错误的...对于你的data.php这不会按照你期望的方式解析javascript ..它只会接受POST数据和ECHO输出结果..不要尝试使用客户端javascript因为它不会做任何事情

data.php:它的php只是简单地做

<?php
   echo $_POST['name']; 
?>
如果你真的想要一个弹出窗口显示然后你必须等待POST / RESPONSE的结果并在你的js中

  $.post("data.php", {'name': data}, function(response){
     $('#dv').html(response);
     alert(response);
  });

记住你从POST或ajax调用调用的php脚本只会处理服务器端代码.. PHP,perl,java,C ...不是像javascript这样的客户端代码