jquery的ajax,简直简单!!只要一个$.get(url,map,function)就搞定了!
index.php:
1 <!DOCTYPE html> 2 <html lang="en"> 3 <head> 4 <meta charset="UTF-8"> 5 <title>Document</title> 6 <script src="jquery.js"></script> 7 </head> 8 <body> 9 <table border="1px" cellspacing="0"> 10 <tr> 11 <td>id</td> 12 <td>用户名</td> 13 <td>密码</td> 14 </tr> 15 <?php 16 $pdo = new PDO("mysql:host=localhost;dbname=userlist","root","jia6181813"); 17 $sql = "SELECT * FROM users"; 18 $obj = $pdo->query($sql); 19 while($row=$obj->fetch()){ 20 echo "<tr>"; 21 echo "<td>$row[id]</td>"; 22 echo "<td>$row[name]</td>"; 23 echo "<td>$row[password]</td>"; 24 echo "<td><a href='javascript:' name='$row[id]'>删除</a></td>"; 25 echo "</tr>"; 26 } 27 28 ?> 29 </table> 30 </body> 31 <script> 32 $('a').click(function(){ 33 //这个地方点击删除的a链接,取得里面name属性的id值,用来xhr.open里面的url。如果不这么做,就得循环遍历所有a链接,还要添加一个存放id的类,具体参考php里的ajax操作。 34 //这地方可以直接用this.name,this指代这个a标签,可以点出它的所有属性。 35 var id = $(this).attr('name'); 36 37 //that的运用,因为在下面的函数里面$(this)已经变了 38 var that = $(this); 39 //jquery的ajax,$.get和$.post,参数有三个:url,url传值参数,接收返回值r的回调函数。 40 $.get("delete.php",{id:id},function(r){ 41 if (r==1) { 42 //hide可以加个时间 43 // that.parent().parent().hide(1000); 44 //fadeOut也可以 45 that.parent().parent().fadeOut(1000); 46 47 }else{ 48 alert(123); 49 } 50 }); 51 }); 52 </script> 53 </html>
delete.php:这个不用改
<?php $id = $_GET[id]; $pdo = new PDO("mysql:host=localhost;dbname=userlist","root","123"); $sql = "DELETE FROM users WHERE id = $id"; // $pdo->query($sql); if ($pdo->query($sql)) { //这里是echo,不是return!! echo 1; }else{ echo 0; } //后面这句不能要啦!不然输出就不是1了,后面跟了一串。。。 // echo "<script>location='index.php'</script>"; ?>