ajax 實現頁面加載和內容的刪除

   ajax最大的好處就在於加載和刪除的時候不會跳轉頁面,如今的網頁大多都會選擇用ajax來寫,相比嵌入PHP代碼來講減小了代碼量,同時加載頁面也會比較快,javascript

 下面是用ajax以數據庫fruit表爲例寫的加載頁面和水果的刪除,剛開始用ajax可能寫起來仍是會比較手生,就當是練習好了php

這是fruit表html

 下面就是首頁的代碼了,先建一個php文件 main.phpjava

 1 <body>
 2 
 3 <h2>內容加載</h2>
 4 <table cellpadding="0" cellspacing="0" border="1" width="100%">
 5     <tr>
 6         <td>水果名稱</td>
 7         <td>水果價格</td>
 8         <td>水果產地</td>
 9         <td>操做</td>
10     </tr>
11     <tbody id="tb">
12 
13     </tbody>
14 </table>
15 </body>

 我選擇的是在頁面只顯示fruit表中的水果名稱 價格和產地這三列,下面咱們就要寫加載的處理頁面了,建一個php文件,jiazaiym.phpajax

 

 1 <?php
 2 include("DADB.class.php");
 3 $db=new DADB();
 4 $sql="select * from fruit ";
 5 $arr=$db->Query($sql);
 6 $str="";
 7 foreach($arr as $v)
 8 {
 9   $str=$str.implode("^",$v)."|";  //每一行之間用「|」鏈接,這樣最後就會多出一個「|」
10 }
11 $str=substr($str,0,strlen($str)-1); //把最後多出的「|」用截取字符串的方式刪去
12 echo $str;
13 ?>

 

加載頁面代碼寫完以後就能夠正式的寫ajax了,這些是要寫在main.php中的sql

 1 <script type="text/javascript">
 2     $.ajax({
 3         url:"jiazaiym.php",
 4         dataType:"TEXT",
 5         success:function(data){
 6             var str = "";
 7             var hang = data.split("|");
 8 
 9             for(var i=0;i<hang.length;i++)
10             {
11                 var lie = hang[i].split("^");
12                     str = str+"<tr><td>"+lie[1]+"</td><td>"+lie[2]+"</td><td>"+lie[3]+"</td><td><input type='button'  ids='"+lie[0]+"' class='sc' value='刪除'/></td></tr>"
13 
14             }
15           $("#tb").html(str);
16         }
17     })
18 </script>

注意:在寫ajax的時候要特別注意裏面的分號和逗號,我本身老是把逗號寫成分號,結果沒法輸出,在檢查一遍代碼無誤後,才發現是逗號寫錯了,這是件很是使人頭疼的事情數據庫

 

寫完加載頁面以後咱們要開始寫刪除頁面了  建一個php文件 shanchu.php,刪除頁面是很是簡單的 和以前直接嵌入php 是差很少的 ui

 

 1 <?php
 2 $ids=$_POST["ids"];
 3 include("DADB.class.php");
 4 $db=new DADB();
 5 $sql="delete from fruit where ids={$ids}";
 6 if($db->Query($sql,0))
 7 {
 8     echo"OK";
 9 }
10 else{
11     echo"flase";
12 }

 

接下來在我要從新寫一個ajax的時候會發現,寫完以後不運行,由於在加載頁面的時候刪除裏面的 class不識別,這就須要我把刪除放到加載的ajax裏面了 同時把加載封裝成一個方法,刪除的時候調用一下就能夠this

 1 <script type="text/javascript">
 2     Load();
 3     function Load() {
 4         $.ajax({
 5             url: "jiazaiym.php",
 6             dataType: "TEXT",
 7             success: function (data) {
 8                 var str = "";
 9                 var hang = data.split("|");
10 
11                 for (var i = 0; i < hang.length; i++) {
12                     var lie = hang[i].split("^");
13                     str = str + "<tr><td>" + lie[1] + "</td><td>" + lie[2] + "</td><td>" + lie[3] + "</td><td><input type='button'  ids='" + lie[0] + "' class='sc' value='刪除'/></td></tr>"
14 
15                 }
16                 $("#tb").html(str);
17                 //刪除頁面
18                 $(".sc").click(function(){
19                     var ids=$(this).attr("ids");
20                 $.ajax({
21                     url: "shanchu.php",
22                     data: {ids: ids},
23                     type: "POST",
24                     dataType: "TEXT",
25                     success: function (aa) {    //去空格
26                         if (aa.trim() == "OK") {
27                             alert("刪除成功");
28                             Load();
29                         }
30                         else {
31                             alert("刪除失敗");
32                         }
33                     }
34                 })
35                 })
36             }
37         })
38     }
39 </script>

這樣寫起來就沒有問題了。url

相關文章
相關標籤/搜索