基于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 相关文章推荐
967 个函式
Oct 09 PHP
PHP怎样调用MSSQL的存储过程
Oct 09 PHP
PHP 高手之路(一)
Oct 09 PHP
php命令行使用方法和命令行参数说明
Apr 08 PHP
ThinkPHP入库出现两次反斜线转义及数据库类转义的解决方法
Nov 04 PHP
php使用类继承解决代码重复的问题
Feb 11 PHP
php通过正则表达式记取数据来读取xml的方法
Mar 09 PHP
php 修改上传文件大小限制实例详解
Oct 23 PHP
PHP集成环境XAMPP的安装与配置
Nov 13 PHP
关于Curl在Swoole协程中的解决方案详析
Sep 12 PHP
laravel 框架实现无限级分类的方法示例
Oct 31 PHP
YII2框架使用控制台命令的方法分析
Mar 18 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
处理单名多值表单的详解
2013/06/08 PHP
yii框架表单模型使用及以数组形式提交表单数据示例
2014/04/30 PHP
PHP中copy on write写时复制机制介绍
2014/05/13 PHP
PHP序列化的四种实现方法与横向对比
2018/11/29 PHP
jQuery html()等方法介绍
2009/11/18 Javascript
JQuery 插件模板 制作jquery插件的朋友可以参考下
2010/03/17 Javascript
js 程序执行与顺序实现详解
2013/05/13 Javascript
javascript获取下拉列表框当中的文本值示例代码
2013/07/31 Javascript
js取得html iframe中的元素和变量值
2014/06/30 Javascript
jQuery实现的一个tab切换效果内部还嵌有切换
2014/08/10 Javascript
JS上传图片前实现图片预览效果的方法
2015/03/02 Javascript
学习JavaScript设计模式之代理模式
2016/01/12 Javascript
jQuery四种选择器使用及示例
2016/06/05 Javascript
Bootstrap栅格系统使用方法及页面调整变形的解决方法
2017/03/10 Javascript
微信小程序微信支付接入开发实例详解
2017/04/12 Javascript
使用Python中的greenlet包实现并发编程的入门教程
2015/04/16 Python
Python实现通过文件路径获取文件hash值的方法
2017/04/29 Python
机器学习10大经典算法详解
2017/12/07 Python
django 按时间范围查询数据库实例代码
2018/02/11 Python
pandas.dataframe中根据条件获取元素所在的位置方法(索引)
2018/06/07 Python
python使用zip将list转为json的方法
2018/12/31 Python
Django后端接收嵌套Json数据及解析详解
2019/07/17 Python
200行python代码实现2048游戏
2019/07/17 Python
numpy.transpose()实现数组的转置例子
2019/12/02 Python
使用python写一个自动浏览文章的脚本实例
2019/12/05 Python
pyecharts调整图例与各板块的位置间距实例
2020/05/16 Python
浅谈cv2.imread()和keras.preprocessing中的image.load_img()区别
2020/06/12 Python
Python 如何创建一个线程池
2020/07/28 Python
在印度上传处方,在线订购药品:Medlife
2019/03/28 全球购物
党课学习思想汇报
2014/01/02 职场文书
写给妈妈的道歉信
2014/01/11 职场文书
幼儿园实习生辞职信
2014/01/20 职场文书
护士感人事迹
2014/05/01 职场文书
党的群众路线教育实践活动心得体会范文
2014/11/05 职场文书
小学生大队委竞选稿
2015/11/20 职场文书
MySQL系列之十五 MySQL常用配置和性能压力测试
2021/07/02 MySQL