基于php(Thinkphp)+jquery 实现ajax多选反选不选删除数据功能


Posted in PHP onFebruary 24, 2017

建议有js基础,了解jquery,thinkphp,废话不说多下面就上代码

《————HTML————》

//thinkphp循环显示把data里fid赋予多选框
<volist name="data" id="vo">
<tr>
   <td><input type="checkbox" value="{$vo.fid}"/></td>//可在后面加td输入参数  
</tr>
</volist>
<tr>
<th width="80"><input type="checkbox" id="all"/>全选</th>
<th width="80"><input type="button" value="全选" class="btn" id="selectAll" /></th>
<th width="80"><input type="button" value="全不选" class="btn" id="unSelect" /></th>
<th><input type="button" value="反选" class="btn" id="reverse" /></th> 
<th width="180">
 <a href="javascript:void(0);" rel="external nofollow" onclick="del()" title="删除选定数据">删除</a>
</th> 
</tr>

《————jsvascript————》

<script>
    //多选
    $("#all").click(function(){   
    if(this.checked){   
        $("#list :checkbox").attr("checked", true);  
      }else{   
        $("#list :checkbox").attr("checked", false); 
      }   
    });
    //当点到全选按钮
    $("#selectAll").click(function () { 
      $("#list :checkbox,#all").attr("checked", true);  
    });
    //全不选
    $("#unSelect").click(function () {  
      $("#list :checkbox,#all").attr("checked", false);  
    });
    //反选
    $("#reverse").click(function () {  
      $("#list :checkbox").each(function () {  
        $(this).attr("checked", !$(this).attr("checked"));  
      }); 
      allCheck(); 
    });
    //删除
    function del(){
      var valArr = new Array;
      $("#list :checkbox[checked]").each(function(i){ 
        valArr[i] = $(this).val(); 
      });
      var vals = valArr.join(',');//数组转换以逗号隔开的字符串 
      if (valArr.length == 0) {
        alert('请选择要删除的选项');
      }else{
        if (confirm("确定删除?删除后将无法恢复。")){
          var data={name:vals};
          $.ajax({
            type: "post",
            url: "{:U('College/School/faculty_del')}",//url为tp方法(控制器/方法)
            data:data,
            success: function(json) {
             var obj = eval('(' + json + ')');//返回回来的json转化为js对象
              if (parseInt(obj.counts) > 0) {
                alert(obj.des);
                location.reload();
               } else {
                alert(obj.des);
               }
              },
            error: function(XMLHttpRequest, textStatus) {
               alert("页面请求错误,请检查重试或联系管理员!\n" + textStatus);
             }
           });
        }
      }
    }
</script>

 《————PHP————》

public function faculty_del(){
    $fid = trim($_POST['name']);
    //以下为查询条件
    $bname['deletemark'] = 0;
    $res = $this->faculty_model
            ->where(array('fid'=>array('in',$fid)))
            ->save($bname);
      //查询条件为你的查询条件,我这边为逻辑删除,修改字段值就好
//    echo $this->faculty_model->getLastSql();
//    var_dump($res);
//    exit;
    if ($res) {
     $counts = "1";
     $des = "成功";
    } else {
     $counts = "0";
     $des = "失败";
    }
    $json_data = "{";
    $json_data.= "\"counts\":".json_encode($counts).",";
    $json_data.= "\"des\":".json_encode($des)."";
    $json_data.= "}";
    echo $json_data;
    exit;    
  }

由于是异步所以你发过来的数据都在控制台查看,当前页面没输出,不要去页面上去找。

以上所述是小编给大家介绍的基于php(Thinkphp)+jquery 实现ajax多选反选不选删除数据功能,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对三水点靠木网站的支持!

PHP 相关文章推荐
php注入实例
Oct 09 PHP
php小型企业库存管理系统的设计与实现代码
May 16 PHP
浅析PHP中Collection 类的设计
Jun 21 PHP
浅析php过滤html字符串,防止SQL注入的方法
Jul 02 PHP
php函数实现判断是否移动端访问
Mar 03 PHP
PHP aes (ecb)解密后乱码问题
Jun 22 PHP
thinkPHP中分页用法实例分析
Dec 26 PHP
php数组分页实现方法
Apr 30 PHP
windows下的WAMP环境搭建图文教程(推荐)
Jul 27 PHP
PHP通过bypass disable functions执行系统命令的方法汇总
May 02 PHP
PHP基于面向对象封装的分页类示例
Mar 15 PHP
php菜单/评论数据递归分级算法的实现方法
Aug 01 PHP
PHP函数rtrim()使用中的怪异现象分析
Feb 24 #PHP
CakePHP框架Session设置方法分析
Feb 23 #PHP
cakephp2.X多表联合查询join及使用分页查询的方法
Feb 23 #PHP
PHP获取中国时间(上海时区时间)及美国时间的方法
Feb 23 #PHP
php实现的XML操作(读取)封装类完整实例
Feb 23 #PHP
利用php生成验证码
Feb 23 #PHP
php实现base64图片上传方式实例代码
Feb 22 #PHP
You might like
PHP JS Ip地址及域名格式检测代码
2013/09/27 PHP
PHP性能测试工具xhprof安装与使用方法详解
2018/04/29 PHP
JQuery实现table行折叠效果以JSON做数据源
2014/05/26 Javascript
node.js中的events.emitter.listeners方法使用说明
2014/12/10 Javascript
JavaScript事件学习小结(五)js中事件类型之鼠标事件
2016/06/09 Javascript
js学习笔记之事件处理模型
2016/10/31 Javascript
Bootstrap按钮组简单实现代码
2017/03/06 Javascript
使用vue和datatables进行表格的服务器端分页实例代码
2017/06/07 Javascript
表格展示利器 Bootstrap Table实例代码
2017/09/06 Javascript
浅谈如何通过node.js对数据进行MD5加密
2018/05/16 Javascript
vue-router 源码之实现一个简单的 vue-router
2018/07/02 Javascript
用Node编写RESTful API接口的示例代码
2018/07/04 Javascript
详解如何配置vue-cli3.0的vue.config.js
2018/08/23 Javascript
JS调用安卓手机摄像头扫描二维码
2018/10/16 Javascript
Node如何后台数据库使用增删改查功能
2019/11/21 Javascript
原生JavaScript实现进度条
2021/02/19 Javascript
[56:45]DOTA2上海特级锦标赛D组小组赛#1 EG VS COL第一局
2016/02/28 DOTA
Python日期操作学习笔记
2008/10/07 Python
python 判断自定义对象类型
2009/03/21 Python
Python中请使用isinstance()判断变量类型
2014/08/25 Python
Python的网络编程库Gevent的安装及使用技巧
2016/06/24 Python
Python中str is not callable问题详解及解决办法
2017/02/10 Python
在Python程序员面试中被问的最多的10道题
2017/12/05 Python
浅谈tensorflow中几个随机函数的用法
2018/07/27 Python
Pycharm设置utf-8自动显示方法
2019/01/17 Python
结合CSS3的布局新特征谈谈常见布局方法
2016/01/22 HTML / CSS
css3实现圆锥渐变conic-gradient效果
2020/02/12 HTML / CSS
html5使用Drag事件编辑器拖拽上传图片的示例代码
2017/08/22 HTML / CSS
英国在线汽车和面包车零件商店:Car Parts 4 Less
2018/08/15 全球购物
英国在线自行车店:Merlin Cycles
2018/08/20 全球购物
市场营销专业个人求职信范文
2013/12/14 职场文书
机工车间主任岗位职责
2014/03/05 职场文书
主持人演讲稿
2014/05/13 职场文书
2014酒店客房部工作总结
2014/12/16 职场文书
试了下Golang实现try catch的方法
2021/07/01 Golang
使用CSS实现音波加载效果
2023/05/07 HTML / CSS