网络编程
位置:首页>> 网络编程>> JavaScript>> JS实现用户管理系统

JS实现用户管理系统

作者:欧欧呀  发布时间:2023-08-29 04:51:20 

标签:JS,用户,管理系统

本文实例为大家分享了JS实现用户管理系统的具体代码,供大家参考,具体内容如下

效果图:

JS实现用户管理系统

html代码:  

<h1>新增学员</h1>
    <div class="info">
      姓名:<input type="text" class="uname" />
       年龄:<input type="text" class="age" />
      性别:
      <select name="gender" id="" class="gender">
        <option value="男">男</option>
        <option value="女">女</option>
      </select>
      薪资:<input type="text" class="salary" /> 就业城市:<select
        name="city"
        id=""
        class="city"
      >
        <option value="北京">北京</option>
        <option value="上海">上海</option>
        <option value="广州">广州</option>
        <option value="深圳">深圳</option>
        <option value="曹县">曹县</option>
      </select>
      <button class="add">录入</button>
    </div>
 
    <h1>就业榜</h1>
    <table>
      <thead>
        <tr>
          <th>学号</th>
          <th>姓名</th>
          <th>年龄</th>
          <th>性别</th>
          <th>薪资</th>
          <th>就业城市</th>
          <th>操作</th>
        </tr>
      </thead>

css代码:

* {
  margin: 0;
  padding: 0;
}
 
a {
  text-decoration: none;
  color:#721c24;
}
h1 {
  text-align: center;
  color:#333;
  margin: 20px 0;
 
}
table {
  margin:0 auto;
  width: 800px;
  border-collapse: collapse;
  color:#004085;
}
th {
  padding: 10px;
  background: #cfe5ff;
  
  font-size: 20px;
  font-weight: 400;
}
td,th {
  border:1px solid #b8daff;
}
td {
  padding:10px;
  color:#666;
  text-align: center;
  font-size: 16px;
}
tbody tr {
  background: #fff;
}
tbody tr:hover {
  background: #e1ecf8;
}
.info {
  width: 900px;
  margin: 50px auto;
  text-align: center;
}
.info  input {
  width: 80px;
  height: 25px;
  outline: none;
  border-radius: 5px;
  border:1px solid #b8daff;
  padding-left: 5px;
}
.info button {
  width: 60px;
  height: 25px;
  background-color: #004085;
  outline: none;
  border: 0;
  color: #fff;
  cursor: pointer;
  border-radius: 5px;
}
.info .age {
  width: 50px;
}

JS代码:

<script>
      // 获取元素
      let tbody=document.querySelector(`tbody`)
      // 录入按钮
      let add = document.querySelector(`.add`)
      let stuId=document.querySelector(`.stuId`) //编号
      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`) //所在地区
      // 删除按钮
      let del = document.querySelector(`.del`)
 
      //  保存数据
      let arr = JSON.parse(localStorage.getItem(`key`)) || []
 
      //  函数封装
        function init(){
          //  创建一个变量,用于拼接
        let htmlStr=``
        //  循环遍历
        for(let i=0;i<arr.length;i++){
          let index= i+1
          // 拼接
          htmlStr +=`   <tr>
                         <td>${index}</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:" class="del" id='${index}''>删除</a> 
                         </td>
                        </tr>
                         `
        }
        // 将拼接的元素插入tbody
        tbody.innerHTML=htmlStr
        }
        // 调用函数
        init()
 
 
        // 给录入按钮添加点击事件
      add.addEventListener(`click`,function(){
        // 判断输入框是否为空
        if (uname.value.trim().length ==0){
         alert(`请输入姓名`)
         return
       }
       if (age.value.trim().length ==0){
         alert(`请输入年龄`)
         return
       }
       if (salary.value.trim().length ==0){
         alert(`请输入薪资`)
         return
       }
        let obj={
          //获取表单元素的value值,
          Id:arr.length>0?arr[arr.length-1].stuId+1 :1001,
          uname:uname.value,
          age:age.value,
          gender:gender.value,
          salary:salary.value,
          city:city.value,
        }
           //  将obj追加到数组的最后
           arr.push(obj)
           // 渲染
               init()
 
          // 每次录入清空输入框
          uname.value=``
          age.value=``
          salary.value=``
           // 存储数据
          localStorage.setItem(`key`,JSON.stringify(arr))
      })
      // 实现数据删除
      // 给tbody点击事件,事件委托
      tbody.addEventListener(`click`,function(e){
        // 获取删除按钮
        if (e.target.className ==`del`){
          // 指定删除arr数组
          arr.splice(e.target.id-1,1)
          // 调用函数
          init()
        }
        localStorage.setItem(`key`,JSON.stringify(arr))
        
      })
</script>

来源:https://blog.csdn.net/m0_66783294/article/details/124135887

0
投稿

猜你喜欢

  • SWFObject的使用是非常简单的,只需要包含 swfobject.js这个js文件,然后在DOM中插入一些简单的JS代码,就能嵌入Fla
  • 交互设计师主导或发起的项目很难拿到结果——现状这个问题在很多的小公司都不存在。小公司养着、催着设计师,设计师不用去考虑能不能拿到结果,因为你
  •  代码如下:Create PROCEDURE Batch_Delete @TableName nvarchar(100), --表
  • 1. iocgo简介习惯于Java或者C#开发的人应该对控制反转与依赖注入应该再熟悉不过了。在Java平台有鼎鼎大名的Spring框架,在C
  • 前言这次,我们要用Pygame写一个Pong游戏先看看效果:需要的模块:Pygame在python文件同目录下新建resources文件夹,
  • asp创建pdf文件代码,详见以下代码:<%Option ExplicitSub CheckXlDriver()&
  • 这个问题好像在各种数据库中都存在,该如何处理呢?一、SQL中:sql="CREATE TABLE phone&
  • 一直在用JS写ASP,也不是特别原因,只是当初学的是JS,后来学ASP时知道ASP也可以用JS写,就没去学VBS.前几个月刚学ASP的时候找
  • 我们知道,数组的sort方法可以对数组元素进行排序,默认是按ASCII字母表顺序排序。如果要根据其他的顺序排序就需要为sort方法提供一个比
  • 数据库开发数据库应用,选择一个好的数据库是非常重要的。下面从一些方面比较了SQL Server与Oracle、DB2三种数据库,为你选择数据
  • 之前写过的组织结构和组织体系都太抽象了,读到标签系统我才有那种“略懂”的感觉。哈哈…书上提到的标签包括:导航情境式链接:常见的“更多”这种用
  • 看了不少朋友的个人网站,有一个小问题,似乎很多朋友都忽略了,那就是版权声明的写法。虽然那只是一小行字,不过作为设计师也好,作为个人的爱好也好
  • Microsoft? SQL Server? 2000 提供了两种主要机制来强制业务规则和数据完整性:约束和触发器。触发器是一种特殊类型的存
  • 虽然以前我写过IE6、IE7、IE8共存的解决方案,但是看到IETester这个软件以后那些都已经没有意义了(那些办法副作用比较大,而且实现
  • 有时候,我们在某一重要的时间段需要监控某张表的变化情况,包含插入、更新、删除。举例来说,当我们把数据导出到外部的系统时,我们希望导出的是全部
  • 从技术上来说,在ASP环境中,读入并管理XML文本的主要方法有三种: 创建MSXML对象,并且将XML文档载入DOM; 使用服务器端嵌入(S
  • 我们大致会在下列几种情况下用到: 一、文件操作(FileSystemObject)<%@ IMPORT 
  • JS提供两个截取字符串的方法,分别是:slice()和substring()slice和substring都可以接受一个或两个参数,第1个参
  • 服务器重新启动的情况当mysqld启动时,所有的授权表内容被读进存储器并且从那时开始生效。被服务器立即应用的情况用GRANT、REVOKE或
  • 缓动,学名为Tween,缓冲移动的简称。要想页面内容切换起来舒服,就使用淡入淡出特效,要想让页面元素动起来自然,就要使用缓动效果。这两个混合
手机版 网络编程 asp之家 www.aspxhome.com