jQuery-表中数据的添加与删除

news2024/12/23 13:26:13

<!DOCTYPE HTML>
<html>
<head>
    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
    <title>表中数据的添加与删除</title>
    <link rel="stylesheet" type="text/css" href="styleB/css.css" />
    <script type="text/javascript" src="../../script/jquery-1.7.2.js"></script>
    <script type="text/javascript">
        $(function(){
            //删除用户的方法
            function delA(){
                //获取要删除员工的名字
                //$(this)表示鼠标单击的元素
                //.parents()表示返回父元素
                //find()返回后代元素
                //"td:eq(0)"表示第一个td元素
                //text()获取指定元素的文本内容
                const name = $(this).parents("tr").find("td:eq(0)").text();
                //弹出一个确认框
                //confirm()在弹窗中用户点击确定按钮返回true,用户点击取消按钮返回false
                const flag = confirm("确认删除--->" + name + "<---的信息吗?");
                if(flag){
                    //删除当前a所在的tr
                    //用户点击的按钮所在的一行信息被删除
                    $(this).parents("tr").remove();
                }
                //取消默认行为
                return false;
            }

            //删除用户,下面两行代码的意义一样,都是给a标签绑定鼠标点击事件然后执行delA函数
            //$("a").click(delA);
            $("a").live("click" , delA);

            //添加员工
            $("#addEmpButton").click(function(){
                //获取用户填写的内容
                const name = $("#empName").val();
                const email = $("#email").val();
                const salary = $("#salary").val();

                //创建tr
                /*
                    <tr>
                        <td>Tom</td>
                        <td>tom@tom.com</td>
                        <td>5000</td>
                        <td><a href="#">Delete</a></td>
                    </tr>
                */
                //append()  比如:x.append(y) 在x元素中添加y元素
                //appendTo() 比如:a.appendTo(b)   把 a 插入到 b 子元素末尾,成为最后一个子元素
                $("<tr></tr>").append("<td>"+name+"</td>")
                              .append("<td>"+email+"</td>")
                              .append("<td>"+salary+"</td>")
                              .append("<td><a href='#'>Delete</a></td>")
                              .appendTo("#employeeTable"); //将元素添加到id=employeeTable元素中
            });
        });
    </script>
</head>
<body>
    <table id="employeeTable">
        <tr>
            <th>姓名</th>
            <th>邮箱</th>
            <th>薪资</th>
            <th>删除</th>
        </tr>
        <tr>
            <td>张三</td>
            <td>zhangsan@163.com</td>
            <td>5000</td>
            <td><a href="#">Delete</a></td>
        </tr>
        <tr>
            <td>李四</td>
            <td>lisi@sohu.com</td>
            <td>8000</td>
            <td><a href="#">Delete</a></td>
        </tr>
        <tr>
            <td>王五</td>
            <td>wangwu@126.com</td>
            <td>10000</td>
            <td><a href="#">Delete</a></td>
        </tr>
    </table>

    <div id="formDiv">
        <h4>添加新员工</h4>
        <table>
            <tr>
                <td class="word">姓名: </td>
                <td class="inp">
                    <input type="text" name="empName" id="empName" />
                </td>
            </tr>
            <tr>
                <td class="word">邮箱: </td>
                <td class="inp">
                    <input type="text" name="email" id="email" />
                </td>
            </tr>
            <tr>
                <td class="word">薪资: </td>
                <td class="inp">
                    <input type="text" name="salary" id="salary" />
                </td>
            </tr>
            <tr>
                <td colspan="2" align="center">
                    <button id="addEmpButton" value="abc">
                        确认添加
                    </button>
                </td>
            </tr>
        </table>
    </div>
</body>
</html>

添加数据信息

删除数据信息:

 

 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/582169.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

vue插槽使用总结

什么是插槽解决什么问题插槽的分类默认插槽具名插槽作用域插槽 什么是插槽 插槽就是子组件中的提供给父组件使用的一个占位符&#xff0c;用 表示&#xff0c;父组件可以在这个占位符中填充任何模板代码&#xff0c;如 HTML、组件等&#xff0c;填充的内容会替换子组件的标签。…

Arcgis小技巧【13】——数据统计(Statistics)相关工具汇总

在Arcgis中可以通过属性表中字段的【统计】功能或使用统计相关的工具对属性表进行数据统计。 在Arcgis工具箱中有一组【统计分析】工具集&#xff0c;不仅包含对属性数据执行标准统计分析&#xff08;例如平均值、最小值、最大值和标准差&#xff09;的工具&#xff0c;也包含…

理解时序数据库的时间线

在当今数据爆炸的时代&#xff0c;时序数据已经成为企业和组织中不可或缺的一部分。它们包括了从传感器、监控设备、日志记录系统和金融交易等多种来源的大量数据&#xff0c;这些数据按照时间顺序排列&#xff0c;记录了各种事件和活动的发生和变化。时序数据的分析和处理对于…

通过python封装1688图片搜索商品数据接口,拍立淘API接口

1688图片搜索API封装接口是一个可以帮助用户快速使用1688图片搜索API的接口封装库。该接口封装库可以帮助用户快速引入1688图片搜索API&#xff0c;并提供各种参数配置和封装的API调用方法&#xff0c;以方便用户快速实现自己的图片搜索需求。 该接口封装库将1688图片搜索API的…

Redis Hash(散列表)实现原理看这篇就够了

1. 是什么 Redis Hash&#xff08;散列表&#xff09;是一种 field-value pairs&#xff08;键值对&#xff09;集合类型&#xff0c;类似于 Python 中的字典、Java 中的 HashMap。一个 field 对应一个 value&#xff0c;你可以通过 field 在 O(1) 时间复杂度查 field 找关联的…

Qt+QtWebApp开发笔记(四):http服务器使用Session和Cookie实现用户密码登录和注销功能

若该文为原创文章&#xff0c;转载请注明原文出处 本文章博客地址&#xff1a;https://hpzwl.blog.csdn.net/article/details/130921152 红胖子网络科技博文大全&#xff1a;开发技术集合&#xff08;包含Qt实用技术、树莓派、三维、OpenCV、OpenGL、ffmpeg、OSG、单片机、软硬…

信号量对象没有所有者

相较于互斥对象(Mutex)和临界区对象(Critical Section) &#xff0c;信号量没有所有者&#xff0c;它们只有计数。 ReleaseSemaphore 函数将会以指定的数量增加对应信号量对象的计数。 (增加计数这个动作&#xff0c;可能会释放正在等待的线程&#xff09;但是释放信号量的线程…

metaIPC2.0 SDK实现webRTC对讲IPC

概述 metaRTC新推出P2P版metaIPC2.0 sdk版本&#xff0c;基于mqtt通信&#xff0c;同时支持windows/linux/android操作系统&#xff0c;支持国内如海思/君正/瑞芯微/MSTAR等主流芯片。 metaIPC2.0支持linux/android/windows IPC&#xff0c;客户端支持浏览器/APP/windows和li…

【JavaSE】Java基础语法(二十七):Set集合和 TreeSet

文章目录 1. Set集合1.1Set集合概述和特点【应用】1.2Set集合的使用【应用】 2.TreeSet集合2.1TreeSet集合概述和特点【应用】2.2TreeSet集合基本使用【应用】2.3自然排序Comparable的使用【应用】2.4比较器排序Comparator的使用【应用】2.4两种比较方式总结 1. Set集合 1.1Se…

数据库必备知识:脏读和幻读的定义及应对策略

随着数据库应用的广泛使用&#xff0c;数据库并发性和一致性的问题成为了引起重视的问题之一。其中&#xff0c;脏读&#xff08;Dirty Read&#xff09;和幻读&#xff08;Phantom Read&#xff09;是常见的并发访问问题&#xff0c;本文将对脏读、幻读进行详细介绍&#xff0…

炸裂!GPT-4 开始自主进化,打造一个虚拟世界!

公众号关注 “GitHubDaily” 设为 “星标”&#xff0c;每天带你逛 GitHub&#xff01; 此前 GitHub 曾诞生过一个名为 Auto-GPT 的开源项目&#xff0c;让 AI 能够根据人类给出的目的&#xff0c;自动设定任务的优先级&#xff0c;尝试自行优化代码、自动改 Bug 等操作。不得不…

2024考研408-计算机组成原理第一章-计算机系统概述

文章目录 起步&#xff1a;认识计算机一、计算机发展历程1.1、什么是计算机系统1.2、计算机硬件的发展1.2.1、总览四代发展1.2.2、四代发展详细介绍1.2.3、计算机硬件的发展历史1.2.4、摩尔定律介绍 1.3、计算机软件的发展1.3.1、软件的发展1.3.2、目前的发展趋势 知识回顾与重…

Redis中的Reactor模型和执行命令源码探索

文章目录 摘要1、 了解Linux的epoll2、了解Reactor模型 一、Redis初始化1.1、配置初始化1.2、服务初始化1.3、网络监听初始化1.4、Reactor线程池初始化1.5、Reactor事件主循环 二、Reactor2.1、Reactor事件处理器2.2、读事件2.2.1、第一次读事件&#xff08;accept&#xff09;…

基于MATALB编程的深度信念网络DBN的01分类编码三分类预测,DBN算法详细原理

目录 背影 DBN神经网络的原理 DBN神经网络的定义 受限玻尔兹曼机(RBM) DBN的语音分类识别 基本结构 主要参数 数据 MATALB代码 结果图 展望 背影 DBN是一种深度学习神经网络,拥有提取特征,非监督学习的能力,是一种非常好的分类算法,本文将DBN算法对数据采用01编码分析…

【数据湖仓架构】数据湖和仓库:Azure Synapse 视角

是时候将数据分析迁移到云端了。我们将讨论 Azure Synapse 在数据湖和数据仓库范式规模上的定位。 在本文中&#xff0c;我们将讨论 Microsoft 的 Azure Synapse Analytics 框架。具体来说&#xff0c;我们关注如何在其中看到数据仓库和数据湖范式的区别。为了熟悉这个主题&…

【Linux】Linux环境基础工具的基本使用及配置(yum、vim)

​ ​&#x1f4dd;个人主页&#xff1a;Sherry的成长之路 &#x1f3e0;学习社区&#xff1a;Sherry的成长之路&#xff08;个人社区&#xff09; &#x1f4d6;专栏链接&#xff1a;Linux &#x1f3af;长路漫漫浩浩&#xff0c;万事皆有期待 文章目录 Linux软件包管理器 - y…

60分钟吃掉detectron2

本范例演示使用非常有名的目标检测框架detectron2 &#x1f917;&#x1f917; 在自己的数据集(balloon数据)上训练实例分割模型MaskRCNN的方法。 detectron2框架的设计有以下一些优点&#xff1a; 1&#xff0c;强大&#xff1a;提供了包括目标检测、实例分割、全景分割等非常…

Spring Boot启动流程

1 Springboot 启动流程 创建一个StopWatch实例&#xff0c;用来记录SpringBoot的启动时间。 通过SpringFactoriesLoader加载listeners&#xff1a;比如EventPublishingRunListener。 发布SprintBoot开始启动事件&#xff08;EventPublishingRunListener#starting()&#xff0…

性能测试——基本性能监控系统使用

这里写目录标题 一、基本性能监控系统组成二、环境搭建1、准备数据文件 type.db collectd.conf2、启动InfluxDB3、启动grafana4、启动collectd5、Grafana中配置数据源 一、基本性能监控系统组成 Collectd InfluxdDB Grafana Collectd 是一个守护(daemon)进程&#xff0c;用来…

【数据结构】时间复杂度与空间复杂度

目录 前言一、算法效率1. 算法效率的定义 二、时间复杂度1. 时间复杂度的定义2. 时间复杂度的计算 三、空间复杂度1. 空间复杂度的定义2. 空间复杂度的计算 四、时间复杂度曲线图结尾 前言 在学习C语言的时候&#xff0c;大多数的小伙伴们并不会对算法的效率了解&#xff0c;也…