动态创建表格(各种管理系统常见)

在这里插入图片描述

该案例实现的功能有
功能1.将后端默认数据添加进去
功能2.录入按钮点击之后,将其信息插入到表格中
功能3.删除操作
功能4.将数据存储在本地
▲注意:数据不管是添加还是删除完,都需要重新渲染

功能1.将后端默认数据添加进去

  let arr = [
        { stuId: 1001, uname: '欧阳霸天', age: 19, gender: '男', salary: '20000', city: '上海' },
        { stuId: 1002, uname: '令狐霸天', age: 29, gender: '男', salary: '30000', city: '北京' },
        { stuId: 1003, uname: '诸葛霸天', age: 39, gender: '男', salary: '2000', city: '北京' },
      ]
      //基本数据录入(分析:我们要把数组里的元素放在表格中,那我们可以根据数据的条数,渲染创建tr)
      // 1.获取元素
      // (我们数组中的元素要插入在表格的tbody中,所以获取tbody)
      let tbody=document.querySelector('tbody')
      // 我们还需要用到的数据有,各个表单的元素
       let uname = document.querySelector(".uname");
      let age = document.querySelector(".age");
      let gender = document.querySelector(".gender");
      let salary = document.querySelector(".salary");
      let city = document.querySelector(".city");

      // 2.渲染函数
      function render(){
        for(let i=0;i<arr.length;i++){
          // 创建节点
          let tr=document.createElement('tr')
          //节点内容
          tr.innerHTML=` <td>${arr[i].stuId}</td>
        <td>${arr[i].uname}</td>
        <td>${arr[i].age}</td>
        <td>${arr[i].gender}</td>
        <td>${arr[i].salary}</td>
        <td>${arr[i].city}</td>
        <td>
          <a href="javascript:">删除</a>
        </td>`
        //追加节点
        tbody.appendChild(tr)
        }
      }
      render()//调用
       arr=getData()//存储数据
    // 功能1.录入按钮点击之后,将其信息插入到表格中

功能2.录入按钮点击之后,将其信息插入到表格中

  • 通过程序添加数据,我们可以通过创建节点,将数据添加进去
  • 复原表单元素,重新赋值即可
// 功能1.录入按钮点击之后,将其信息插入到表格中
      // 1、获取标签
      let btn=document.querySelector('.add')
      // 2.注册事件
      btn.addEventListener('click',function(){
        arr.push({
          stuId: arr[arr.length - 1].stuId + 1,
          uname: uname.value,
          age: age.value,
          gender: gender.value,
          salary: salary.value,
          city: city.value,
        })
        render();
        //复原表单元素
        uname.value = age.value = salary.value = "";
        gender.value = "男";
        city.value = "北京";
      })

功能3.删除操作
因为这些数据是我们通过节点追加进去的,所以我们可以通过事件委托,来进行删除

//事件委托 找当前对象的找父元素
 tbody.addEventListener('click',function(e){
        if(e.target.tagName==='A'){
        //通过数组splice删除方法 arr.splice(从哪里开始删,1)
          arr.splice(e.target.id,1)
          render();
        }
      })

功能4.将数据存储在本地
分析:如果localstorage里面没有数据使用arr, 如果有数据,获取localstorage里面的数据并使用 – 封装函数 : 无论是添加还是删除都要基于已经存储的数据进行操作

function getData(){
        let data=localStorage.getItem('userInfo')
        if(data){
          return JSON.parse(data)
        }
        else{
          let arr = [
      { stuId: 1001, uname: '欧阳霸天', age: 19, gender: '男', salary: '20000', city: '上海' },
      { stuId: 1002, uname: '令狐霸天', age: 29, gender: '男', salary: '30000', city: '北京' },
      { stuId: 1003, uname: '诸葛霸天', age: 39, gender: '男', salary: '2000', city: '北京' },
    ]
    localStorage.setItem('userInfo',JSON.stringify(arr))
        }
      }
  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
动态表格生成数据管理系统主要适用于从事各种信息收集整理汇总的工作岗位,特别是办公室人员。它没有固定的表格模式,完全可以结合当前工作需要在线制定表格并指定数据填报者等,用心用过就知道它的好处了!这是结合本人多年工作情况动手写的,希望可以帮助有需要的同志以提高工作效率,解放重复劳动的双手和疲劳的大脑。参照说明,下载在电脑即可使用,有网络环境效果最佳。 使用前准备: 1.此共享版本,在使用前请根据操作系统情况注册“系统控件”。 2.为了能调用打印控件,请将本运行站点添加到可信站点中:IE浏览器——工具——Internet选项——安全——受信任的站点——站点(先将下面的√去掉再添加)。 使用方法: 双击运行“AspWebServer.exe”(若杀毒软件拦截请安心放行,此软件是类IIS服务软件) 1.请将58031端口添加到电脑防火墙可信端口中或者关闭电脑防火墙。 2.(index.asp)数据源报送帐号:测试,密码:123456。 3.(LDX2019Table.asp)系统管理帐号:单位名称:测试,操作员:测试,系统管理:天天向上,系统内部管理认证号:123456。 4.系统可方便的布置在局域网或专网中,让用户访问你布置电脑的IP即可使用。 5.互联网布置可考虑域名方式或空间。 注意事项: 1.报送数据页面:http://127.0.0.1:58031/index.asp 2.系统管理页面:http://127.0.0.1:58031/LDX2019Table.asp 系统作用: 1.在线生成所需表格并指定填报数据源,实现在线方便的管控。 2.在线生成表格可进行多字段类型设置,可设置数据组合关系,实现表格数据的计算和统计。 3.在线表格多种输出形式,xls,word等 4.多种授权控制模式,实现精准使用授权。 表格多,信息收集压力大,想轻松的应对就用表格工作助手 表格多,信息收集要求高导致工作压力大,特别是重复劳动,如何解压提高效率,就用表格工作助手吧! 工作表格(类电子表格)信息采集助手 工作表格(类电子表格)信息采集助手 演示前台数据源:user 验证码:123456 演示后台地址:/LDX2019Table.asp 数据源:user 录入员:user 系统用户:user 验证码:123456
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值