~~开发工具与关键技术: 前端
作者:梁锦豪
撰写时间:2019/5 / 10~~
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
在之前的文献中我写过了简单的增删查改,可当数据过多的时候就连最简单的删除也变得相当繁琐(操作繁琐),比如说:你要删除一二十条数据的时候,你一条一条的删除你或许还可以接受;但是,当你有成千上万条数据要删除的时候你还可以接受吗?答案是否定的,所以我们需要实现一个可以进行批量操作的方法,我们要讲的就是批量删除。
首先我们要在渲染表格的时候个表格多加一个复选框
![在这里插入图片描述](https://img-blog.csdnimg.cn/20190517083703834.png)
这个复选框的作用是用来判断用户选中的行的,所以我们要加一个行的监听事件,通过点击行来获取次行的值
![在这里插入图片描述](https://img-blog.csdnimg.cn/20190517083713813.png)
我们是通过ID来判断选中的数据的,当我们选中多条数据时那么就有多个ID,如果不对这些ID进行特殊处理那么这些ID将进行拼接,比如你选中第一第二行时,假设第一行的ID为1,第二行的ID为2那么你获取到的数据就是12,而这个“12”并不是我们想要的数据,所有我们要对ID与ID之间进行分割
![在这里插入图片描述](https://img-blog.csdnimg.cn/20190517083728782.png)
先判断用户是否选中数据,如果没选中就给用户一个提示,如果选中了就用一个for循环对所有选中的数据进行遍历循环得出所有选中数据的所有ID,然后用一个“;”对所有的ID进行分割(其实用“,”什么的进行分割也可以)就相当于在每个id的后面加一个“;”假如还是用上面那个例子那得到的数据将变为(1;2;)
但是在这里还有一个问题就是如果数据是通过一个“;”进行分割的那么控制器那边得到的数据将会是(“1”;“2”;“ ”),因为最后一个数据也存在“;”所以它会识别出多以空的字段,也就是说最后一个“;”就不应该存在
![在这里插入图片描述](https://img-blog.csdnimg.cn/20190517083744560.png)
我们可以利用下标定位到最后一个“;”对它进行清除
还要定义俩个用来记录的变量,一个来记录成功的条数,一个用来记录失败的条数
![在这里插入图片描述](https://img-blog.csdnimg.cn/20190517083755244.png)
设置它们的默认值为0,然后你就可以得到成功和失败的条数了
![在这里插入图片描述](https://img-blog.csdnimg.cn/20190517083805625.png)
在页面中调用控制器定义好的方法,回调函数,记得要加刷新table这方法,否则还要手动刷新页面才可以看到该删除的数据消失,最后在那个你定义好的“批量删除”按钮上调用这个函数就可以了
批量删除
最新推荐文章于 2019-07-18 15:40:02 发布