用ajax对数据进行删除和查看
来源: 网络
随机为您推荐的文章:PHP——函数_学习笔记
一.函数与语言结构 语言结构:就是PHP语言的关键词,语言语法的一部分;它不可以被用户定义或者添加到语言扩展或库中;它可以有也可以没有变量和返回值。 函数:有代码块组成,可
这里讲述的是用ajax对数据进行删除和查看的说明,具体操作请看面的内容
删除和查看详情操作的共同语句:就是怎么显示表?
1.在主体中写表的开头行,想要显示的内容,并且加载数据也要显示的地方也建张表
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 <table width="100%"border="1"cellpadding="0"cellspacing="0"> <tr>//开头行显示的内容 <td>代号</td> <td>名称</td> <td>价格</td> <td>产地</td> <td>库存</td> <td>操作</td> </tr> <tbody id="bg">//循环遍历表显示的内容展示的位置 </tbody> </table>如图:
2.显示数据:用ajax方法遍历一张表,显示出表的内容
1 2 3 4 5 $.ajax({<br> //因为不用传输数据所以就不用写data和传输类型了 url:"xianshicl.php",//编写处理页面 dataType:"TEXT", success:function(data){<br> //执行处理页面结束的语句编写 }<br>})如图:
3.显示数据的处理页面
1 2 3 4 5 6 7 <?php include("DBDA.class.php"); /调用封装好的类 $db=newDBDA();//构造新对象 $sql="select * from fruit";//查询水果表中的所有数据 echo$db->StrQuery($sql);//调用封装类中的字符串的放方法上面用到的封装的转换字符串的方法
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 classDBDA { public$host="localhost";//数据库连接 public$uid="root";//数据库用户 public$password="123";//用户密码 public$dbname="test2";//数据库名 //返回字符串的方法 publicfunctionStrQuery($sql,$type=1) { $db=newMySQLi($this->host,$this->uid,$this->password,$this->dbname); $r=$db->query($sql); if($type==1) { $attr=$r->fetch_all(); $str=""; foreach($attras$v) { $str.= implode("^",$v)."|";//拼接数组为字符串 } returnsubstr($str,0,strlen($str)-1);//截取字符串:最后的拼接符不显示 } else { return$r; } } }4.步骤2中的执行处理页面结束的语句编写:
1 2 3 4 5 6 7 8 9 varhang = data.split("|");//拆分字符“|”串:显示行 varstr =""; for(vari=0;i<hang.length;i++) { varlie = hang[i].split("^");//拆分字符串“^”:显示列 str +="<tr><td>"+lie[0]+"</td><td>"+lie[1]+"</td><td>"+lie[2]+"</td><td>"+lie[3]+"</td><td>"+lie[4]+"</td><td>操作</td></tr>"; } $("#bg").html(str);//将处理的数据放到上面显示的div中
数据的显示效果,删除和查看时将操作一栏修改并且加入按钮的触发事件就可以了:需要修改的代码就是“操作”这一列:
1 str +="<tr><td>"+lie[0]+"</td><td>"+lie[1]+"</td><td>"+lie[2]+"</td><td>"+lie[3]+"</td><td>"+lie[4]+"</td><td>操作</td></tr>";一、数据的删除处理
1.在循环数据库的时候,在最后的一个单元格中添加删除按钮,然后就是起个名字便于对其添加数据,写个主键值
1 <td><input type='button'value='删除'class='shanchu'code='"+lie[0]+"'/></td>2.对删除按钮添加事件
1 2 3 $(".shanchu").click(function(){//找到删除按钮,对其添加单击事件,单击之后执行事件 varcode = $(this).attr("code");//找到属性值 })3.调用ajax方法,ajax里的步骤
1 2 3 4 5 6 7 8 $.ajax({ url:"shanchucl.php",//处理页面的名称 data:{c:code},//为值取个名字 type:"POST",//传值方式 dataType:"TEXT",//数据类型 success:function(d){ <br> //处理页面执行成功后在执行下面的语句 } })4.接下来写删除的处理页面,这个页面写过很多次了
1 2 3 4 5 6 7 8 9 10 11 12 13 14 <?php include("DBDA.class.php");//调用封装 $db=newDBDA();//造新对象 $code=$_POST["c"];//将值传过来 $sql="delete from fruit where ids='{$code}'";//写sql语句 if($db->Query($sql,0))//执行语句并且判断 { echo"OK"; } else { echo"NO"; }5.返回调用的ajax中开始写成功后的代码
1 2 3 4 5 6 7 8 if(d.trim()=="OK") { shuju();//因为整体的从显示到删除的ajax都要在这重新写一遍,那么可以把整个写成个方法,然后这样调用 } else { alert("删除失败!"); }6.这样就可以完成对数据的删除了
(原数据图)
(随便删除一条数据图)
二、查看数据
点击查看数据,会弹出数据详情的窗口
1.既然是详情,那么修改上面所讲的那一句语句就可以:在操作的那添加个按钮,传一个主键值,删除时肯定是用代号来进行查看,因为代号没有重复的