基于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原理之异常机制深入分析
Aug 08 PHP
PHP防止跨域提交表单
Nov 01 PHP
在PHP中使用redis
Nov 04 PHP
在PHP中运行Linux命令并启动SSH服务的例子
Jun 12 PHP
php中addslashes函数与sql防注入
Nov 17 PHP
PHP CodeIgniter框架的工作原理研究
Mar 30 PHP
ThinkPHP路由详解
Jul 27 PHP
调试WordPress中定时任务的相关PHP脚本示例
Dec 10 PHP
如何使用php等比例缩放图片
Oct 12 PHP
PHP封装的多文件上传类实例与用法详解
Feb 07 PHP
PHP的PDO大对象(LOBs)
Jan 27 PHP
laravel 关联关系遍历数组的例子
Oct 10 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
30 个很棒的PHP开源CMS内容管理系统小结
2011/10/14 PHP
phpstorm配置Xdebug进行调试PHP教程
2014/12/01 PHP
php两点地理坐标距离的计算方法
2018/12/29 PHP
TNC vs RR BO3 第一场 2.14
2021/03/10 DOTA
JavaScript中的一些定位属性[图解]
2010/07/14 Javascript
使用Jquery Aajx访问WCF服务(GET、POST、PUT、DELETE)
2012/03/16 Javascript
jQuery移除tr无效的解决方法(tr是动态添加)
2014/09/22 Javascript
JS实现控制表格行内容垂直对齐的方法
2015/03/30 Javascript
jquery+css3实现网页背景花瓣随机飘落特效
2015/08/17 Javascript
JQuery 获取Dom元素的实例讲解
2017/07/08 jQuery
bootstrap表格内容过长时用省略号表示的解决方法
2017/11/21 Javascript
ExtJs整合Echarts的示例代码
2018/02/27 Javascript
微信小程序网络请求封装示例
2018/07/24 Javascript
微信小程序使用map组件实现获取定位城市天气或者指定城市天气数据功能
2019/01/22 Javascript
JS实现移动端点击按钮复制文本内容
2019/07/28 Javascript
layui table去掉右侧滑动条的实现方法
2019/09/05 Javascript
Node Mongoose用法详解【Mongoose使用、Schema、对象、model文档等】
2020/05/13 Javascript
[03:52]显微镜下的DOTA2第三期——英雄在无聊的时候干什么
2014/06/20 DOTA
Python中函数的参数传递与可变长参数介绍
2015/06/30 Python
用Python的Flask框架结合MySQL写一个内存监控程序
2015/11/07 Python
Python3.6笔记之将程序运行结果输出到文件的方法
2018/04/22 Python
Python 3.6 中使用pdfminer解析pdf文件的实现
2019/09/25 Python
Pandas 缺失数据处理的实现
2019/11/04 Python
如何通过python计算圆周率PI
2020/11/11 Python
PyQt5中QSpinBox计数器的实现
2021/01/18 Python
多重CSS背景动画实现方法示例
2014/04/04 HTML / CSS
CSS3圆角边框和边界图片效果实例
2016/07/01 HTML / CSS
详解CSS透明opacity和IE各版本透明度滤镜filter的最准确用法
2016/12/20 HTML / CSS
css3使用animation属性实现炫酷效果(推荐)
2020/02/04 HTML / CSS
中国包裹转运寄送国际服务:Famiboat
2019/07/24 全球购物
《湘夫人》教学反思
2014/02/21 职场文书
领导干部对照检查材料
2014/08/24 职场文书
领导班子遵守党的政治纪律情况对照检查材料
2014/09/26 职场文书
银行转正自我鉴定
2014/09/29 职场文书
初中军训感想
2015/08/07 职场文书
Java实现添加条码或二维码到Word文档
2022/06/01 Java/Android