基于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
文件上传程序的全部源码
Oct 09 PHP
php 显示指定路径下的图片
Oct 29 PHP
php数组相加 array(“a”)+array(“b”)结果还是array(“a”)
Sep 19 PHP
去除php注释和去除空格函数分享
Mar 13 PHP
php实现微信公众号无限群发
Oct 11 PHP
详谈php静态方法及普通方法的区别
Oct 04 PHP
删除PHP数组中头部、尾部、任意元素的实现代码
Apr 10 PHP
Yii 2.0实现联表查询加搜索分页的方法示例
Aug 02 PHP
PHP实现广度优先搜索算法(BFS,Broad First Search)详解
Sep 16 PHP
PHP Post获取不到非表单数据的问题解决办法
Feb 27 PHP
php+mysql实现的无限分类方法类定义与使用示例
May 27 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
同时提取多条新闻中的文本一例
2006/10/09 PHP
数据库中排序的对比及使用条件详解
2012/02/23 PHP
codeigniter发送邮件并打印调试信息的方法
2015/03/21 PHP
javascript编程起步(第五课)
2007/02/27 Javascript
(function($){...})(jQuery)的意思
2010/07/22 Javascript
javascript完美拖拽的实现方法
2013/09/29 Javascript
使用js如何实现全选与全不选
2013/12/30 Javascript
淘宝网提供的国内NPM镜像简介和使用方法
2014/04/17 Javascript
jquery实现下拉框左右选择功能
2017/02/21 Javascript
完美解决UI-Grid表格元素中多个空格显示为一个空格的问题
2017/04/25 Javascript
360提示[高危]使用存在漏洞的JQuery版本的解决方法
2017/10/27 jQuery
ES6与CommonJS中的模块处理的区别
2018/06/13 Javascript
Node.js文本文件BOM头的去除方法
2020/11/22 Javascript
[02:02]2018DOTA2亚洲邀请赛Mineski赛前采访
2018/04/04 DOTA
[52:07]完美世界DOTA2联赛PWL S3 LBZS vs access 第二场 12.10
2020/12/13 DOTA
[48:18]DOTA2-DPC中国联赛 正赛 RNG vs Dynasty BO3 第二场 1月29日
2021/03/11 DOTA
Python魔术方法详解
2015/02/14 Python
Python使用chardet判断字符编码
2015/05/09 Python
Python装饰器使用实例:验证参数合法性
2015/06/24 Python
Python正则表达式知识汇总
2017/09/22 Python
python 定时修改数据库的示例代码
2018/04/08 Python
python使用xlsxwriter实现有向无环图到Excel的转换
2018/12/12 Python
Django框架模板介绍
2019/01/15 Python
Python爬虫 bilibili视频弹幕提取过程详解
2019/07/31 Python
Python中全局变量和局部变量的理解与区别
2021/02/07 Python
英国鹦鹉店:Parrot Essentials
2018/12/03 全球购物
全神贯注教学反思
2014/02/03 职场文书
商务代表岗位职责
2015/02/15 职场文书
2015银行年终工作总结范文
2015/05/26 职场文书
少年派的奇幻漂流观后感
2015/06/08 职场文书
2016高考冲刺决心书
2015/09/23 职场文书
创业计划书之健康营养产业
2019/10/15 职场文书
mysql获取指定时间段中所有日期或月份的语句(不设存储过程,不加表)
2021/06/18 MySQL
深入解读Java三大集合之map list set的用法
2021/11/11 Java/Android
Mysql事务索引知识汇总
2022/03/17 MySQL
python井字棋游戏实现人机对战
2022/04/28 Python