基于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进行MySQL删除记录操作代码
Jun 07 PHP
phpmyadmin导入(import)文件限制的解决办法
Dec 11 PHP
第三章 php操作符与控制结构代码
Dec 30 PHP
CI框架给视图添加动态数据
Dec 01 PHP
php常见的魔术方法详解
Dec 25 PHP
Yii使用migrate命令执行sql语句的方法
Mar 15 PHP
人脸识别测颜值、测脸龄、测相似度微信接口
Apr 07 PHP
Yii2超好用的日期和时间组件(值得收藏)
May 05 PHP
Laravel学习教程之View模块详解
Sep 18 PHP
PHP中递归的实现实例详解
Nov 14 PHP
PHP fprintf()函数用法讲解
Feb 16 PHP
PHP实现Snowflake生成分布式唯一ID的方法示例
Aug 30 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函数array_flip()在重复数组元素删除中的作用
2013/06/27 PHP
PHP程序员常见的40个陋习,你中了几个?
2014/11/20 PHP
php+layui数据表格实现数据分页渲染代码
2019/10/26 PHP
yii 框架实现按天,月,年,自定义时间段统计数据的方法分析
2020/04/04 PHP
Add Formatted Text to a Word Document
2007/06/15 Javascript
JavaScript prototype属性使用说明
2010/05/13 Javascript
jQuery EasyUI API 中文文档 - ProgressBar 进度条
2011/09/29 Javascript
JQuery弹出层示例可自定义
2014/05/19 Javascript
JavaScript中获取鼠标位置相关属性总结
2014/10/11 Javascript
javascript实现禁止右键和F12查看源代码
2014/12/26 Javascript
js点击返回跳转到指定页面实现过程
2020/08/20 Javascript
深入理解Javascript中的自执行匿名函数
2016/06/03 Javascript
Actionscript与javascript交互实例程序(修改)
2016/09/22 Javascript
纯js实现手风琴效果代码
2020/04/17 Javascript
Javascript实现倒计时时差效果
2017/05/18 Javascript
关于redux-saga中take使用方法详解
2018/02/27 Javascript
小程序红包雨的实现示例
2019/02/19 Javascript
angular4+百分比进度显示插件用法示例
2019/05/05 Javascript
前端Vue项目详解--初始化及导航栏
2019/06/24 Javascript
[02:49]2014DOTA2电竞也是体育项目! 势要把荣誉带回中国!
2014/07/20 DOTA
python里对list中的整数求平均并排序
2014/09/12 Python
在Python中使用Mako模版库的简单教程
2015/04/08 Python
以911新闻为例演示Python实现数据可视化的教程
2015/04/23 Python
Python分析学校四六级过关情况
2017/11/22 Python
Python简单实现socket信息发送与监听功能示例
2018/01/03 Python
Python进程,多进程,获取进程id,给子进程传递参数操作示例
2019/10/11 Python
PyCharm使用之配置SSH Interpreter的方法步骤
2019/12/26 Python
Python3+selenium实现cookie免密登录的示例代码
2020/03/18 Python
解决import tensorflow as tf 出错的原因
2020/04/16 Python
python如何实现DES加密
2020/09/21 Python
会计助理岗位职责
2014/02/17 职场文书
2014年部门工作总结
2014/11/12 职场文书
公司奖励通知
2015/04/21 职场文书
从np.random.normal()到正态分布的拟合操作
2021/06/02 Python
浅谈Redis的事件驱动模型
2022/05/30 Redis
windows11选中自动复制怎么开启? Win11自动复制所选内容的方法
2022/07/23 数码科技