实现点击刷新之后出现数据 并且实现添加 删除,批量删除。

第一步:写页面布局,标题,按钮,复选框

<button id="refresh">刷新</button><hr /><table><thead><th>勾选</th><th>编号</th><th>名称</th><th>价格</th><th>品牌</th><th>操作</th></thead><tbody id="list"></tbody></table><div><input  type="checkbox" id="checkAll"   class="check"/><span>全选&nbsp;&nbsp;&nbsp;&nbsp;</span><button id="batchDel">删除</button></div>

第二步:把想要的数据利用数组的形式存储(模拟一些数据,假设这些数据是通过后端程序读取的数据库内容)

var data=[{"id":1,"name":"方便面","price":3.5,"brand":"白象"},{"id":2,"name":"火腿肠","price":1.5,"brand":"双汇"},{"id":3,"name":"牛奶","price":4.5,"brand":"蒙牛"},{"id":4,"name":"瓜子","price":6.5,"brand":"金鸽"},{"id":5,"name":"辣条","price":5.5,"brand":"卫龙"},{"id":6,"name":"面包","price":3.5,"brand":"盼盼"},]; 

第三步:刷新生成数据,定义变量,读取数据,并且把数据生成每一行的标签元素添加到定义的变量中去

//刷新生成数据$("#refresh").click(function(){//当点击新的时候,首先清空元素$("#list").empty();//1,定义标签变量var dom="";//2,读取data中的数据,把数据生成每一行的标签元素追加到dom变量中for(var i=0;i<data.length;i++){var goods=data[i]dom+="<tr>"+"<td><input type='checkbox' class='check'/></td>";dom+="<td>"+goods.id+"<td/>"+"<td>"+goods.name+"<td/>"+"<td>"+goods.price+"<td/>"+"<td>"+goods.brand+"<td/>";dom+="<td>"+"<a href='#'>购买</a>&nbsp:"+"<button class='del'>删除</button>"+"</td>"+"</tr>";}//3.把dom变量追加到tbody中$("#list").append(dom)});

第四步:点击全选,勾选列表中所有的复选框(click不能对动态生成的元素执行事件绑定,必须使用on进行事件动态绑定)

//click不能对动态生成的元素执行事件绑定,必须使用on进行事件动态绑定//语法:元素.on(事件名,元素里面那个标签绑定,function(){})$("#list").on('click','.del',function(){//当前点击的删除按钮的父辈元素且名字是tr的进行移除$(this).parents("tr").remove()});//3.点击全选,勾选列表中所有的复选框$("#checkAll").click(function(){//获取当前复选框要变成的状态var flag=$(this).prop("checked");if(flag){//如果全选被勾选了,把id为list里面所有的class为check的复选框设置勾选$("#list .check").prop("checked",true)}else{//全选被取消了,把id为list里面所有的class为check的复选框设置取消勾选$("#list .check").prop("checked",false)}});

第五步:批量删除(筛选class叫做check的复选框,并且状态被勾选,删除它们父元素的tr行)

//批量删除$("#batchDel").click(function(){//筛选class叫做check的复选框,并且状态被勾选,删除它们父元素的tr行$(".check:checked").parents("tr").remove();});

页面总体代码:

<!DOCTYPE html>
<html><head><meta charset="utf-8" /><title>页面元素综合操作</title><script src="js/jquery.min.js"></script><script>$(function(){//模拟一些数据,假设这些数据是通过后端程序读取的数据库内容var data=[{"id":1,"name":"方便面","price":3.5,"brand":"白象"},{"id":2,"name":"火腿肠","price":1.5,"brand":"双汇"},{"id":3,"name":"牛奶","price":4.5,"brand":"蒙牛"},{"id":4,"name":"瓜子","price":6.5,"brand":"金鸽"},{"id":5,"name":"辣条","price":5.5,"brand":"卫龙"},{"id":6,"name":"面包","price":3.5,"brand":"盼盼"},]; //刷新生成数据$("#refresh").click(function(){//当点击新的时候,首先清空元素$("#list").empty();//1,定义标签变量var dom="";//2,读取data中的数据,把数据生成每一行的标签元素追加到dom变量中for(var i=0;i<data.length;i++){var goods=data[i]dom+="<tr>"+"<td><input type='checkbox' class='check'/></td>";dom+="<td>"+goods.id+"<td/>"+"<td>"+goods.name+"<td/>"+"<td>"+goods.price+"<td/>"+"<td>"+goods.brand+"<td/>";dom+="<td>"+"<a href='#'>购买</a>&nbsp:"+"<button class='del'>删除</button>"+"</td>"+"</tr>";}//3.把dom变量追加到tbody中$("#list").append(dom)});//click不能对动态生成的元素执行事件绑定,必须使用on进行事件动态绑定//语法:元素.on(事件名,元素里面那个标签绑定,function(){})$("#list").on('click','.del',function(){//当前点击的删除按钮的父辈元素且名字是tr的进行移除$(this).parents("tr").remove()});//3.点击全选,勾选列表中所有的复选框$("#checkAll").click(function(){//获取当前复选框要变成的状态var flag=$(this).prop("checked");if(flag){//如果全选被勾选了,把id为list里面所有的class为check的复选框设置勾选$("#list .check").prop("checked",true)}else{//全选被取消了,把id为list里面所有的class为check的复选框设置取消勾选$("#list .check").prop("checked",false)}});//批量删除$("#batchDel").click(function(){//筛选class叫做check的复选框,并且状态被勾选,删除它们父元素的tr行$(".check:checked").parents("tr").remove();});});</script></head><body><button id="refresh">刷新</button><hr /><table><thead><th>勾选</th><th>编号</th><th>名称</th><th>价格</th><th>品牌</th><th>操作</th></thead><tbody id="list"></tbody></table><div><input  type="checkbox" id="checkAll"   class="check"/><span>全选&nbsp;&nbsp;&nbsp;&nbsp;</span><button id="batchDel">删除</button></div></body>
</html>

JQuary页面元素综合操作案例相关推荐

  1. 第五章 常用页面元素自动化操作(上)

    -----Web自动化测试之Webdriver(python)--从零到熟练(系列) 经过我们对自动化测试环境的搭建,页面元素的定位,测试点的验证以及自动化测试用例的初探等的学习,可以说我们可以编写自 ...

  2. Cypress之模拟键盘鼠标操作以及页面元素拖动操作

    上篇文章讲解了使用cypress框架时,如何上传或者下载文件,以及定位操作iframe和shadow dom下的页面元素.此次课程将讲解如何模拟键盘输入.鼠标操作以及如何拖动页面元素,另外,会介绍如何 ...

  3. selenium与js联动实现页面定位及删除页面元素的操作问题

    在用selenuim爬取网站的过程中常常需要进行下拉条操作,在python中使用js联动是非常好的一个解决方法 # 定位到页面最底部 js = 'window.scrollTo(0, document ...

  4. selenium 页面经常改变元素_selenium 总结篇,常见方法和页面元素的操作

    今天,总结一下selenium怎么操作web页面常见的元素. 主要有: 上传 alter dialog prompt dialog confirm dialog select list radio b ...

  5. cypress之实现文件上传下载以及操作iframe下页面元素

    前面讲解了使用cypress框架如何定位.操作页面元素以及校验测试结果,此次课程将介绍如何实现文件上传.操作iframe下面的页面原因以及操作shadow dom下的页面元素.为了完成此次课程目标,拆 ...

  6. selenium拖动元素java_【自动化测试】Java+Selenium操作页面元素(合集)

    本文基于Java语言,依托于Eclipse工具,使用Selenium框架,主要介绍在Selenium中,如何操作Web页面中的各种元素. Eclipse 搭建 1.1.Eclipse 配置 1.2.引 ...

  7. java 获取页面元素的位置_Selenium Java 页面元素定位2

    一.操作目的 1.1 自动化测试常用操作 1.定位网页上的元素,并存储到一个变量中: 2.对变量进行操作,比如点击或输入文字: 3.设定页面元素的操作值: 二.定位方法汇总 2.1 findEleme ...

  8. python selenium定位不到二级页面元素解决方法

    在对一个页面元素进行操作,点击按钮弹出一个二级页面,一直获取不到元素 解决: 需要切换到新的页面句柄才可以定位到元素 # 获取当前页的句柄main_windows = chromeDriver.cur ...

  9. educoder头歌Web实训 web课——综合应用案例:动态焦点图页面的制作

    educoder头歌Web实训 太原理工web课--综合应用案例:拼图页面的制作[全网更新最快]_玛卡巴卡的博客-CSDN博客 第1关:动态焦点图页面的样式设计 任务描述 本关任务: 完成动态焦点图 ...

最新文章

  1. 有没搞错?Java 对象不使用时要赋值为 null?
  2. R语言笔记6:在R中写一些简单的函数、functions基础和作用域
  3. matlab电话拨号音的合成与识别代码,实验报告 电话拨号音的合成与识别
  4. 高级停靠(Dock)技术的实现
  5. LeetCode中二叉树相关题
  6. 为什么Nginx的性能要比Apache高得多?
  7. bzoj3110 [Zjoi2013]K大数查询
  8. java 使用vsphere 创建虚拟机‘_Java数组的创建及使用
  9. 《Go语言实战》摘录:7.2 并发模式 - pool
  10. 2019牛客多校第九场B Quadratic equation(二次剩余定理)题解
  11. C++语法知识复习2(黑马程序员教程P109-p146)
  12. 5G+MEC+V2X车联网解决方案白皮书
  13. 修改echarts饼状图位置
  14. SUN软件包管理的命令:pkgadd
  15. 基于FPGA的2FSK调制解调器
  16. mysql mgr recovering_深度理解MySQL Group Replication的RECOVERING状态
  17. 华为防火墙笔记-报文处理流程
  18. 12个球,其中有1个坏球和其他11个重量不一样,给你一个天平,称3次,找出不一样的那个
  19. Zotero添加影响因子插件IF
  20. python的opencv库使用gpu加速_Python跳一跳:使用Cython加速opencv像素级访问

热门文章

  1. /* 触发弹层 */(layui弹窗)
  2. c语言第几天的答案,C语言根据日期取其位于一年中的第几天
  3. 项目五:定期存款利息计算器
  4. JetBrains IDEA/Clion/Client + ROS 远程开发环境搭建
  5. 知识图谱每日阅读(一)
  6. 数据解读:垃圾分类政策的传播特征和舆论发展趋势
  7. Fruit Ninja 2 Year Anniversary 水果忍者(切水果)两周年庆典免费发码
  8. 消息中间件学习总结(8)——RocketMQ之RocketMQ捐赠给Apache那些鲜为人知的故事
  9. lua/require函数
  10. 主生产计划的功能以及其相关MRP类型参数 (网络转载,备忘)