HTML的DOM操作看一篇就够了

HTML之JavaScript DOM操作元素(2) var aaa = document.getElementById("username") // 根据元素的id值获取页面上的唯一一个元素,有同名的则返回找到的第一个。// 思路1 获取父元素,然后根据父元素获取父元素的第一个子元素,循环删除父元素的第一个子元素,直到为null,就相当于链表删除。父元素.appendChild(子元素) 在父元素中追加子元素。父元素.insertBefore(新元素,参照元素) 在特定元素之前新增元素。 阅读详情

1、常用的DOM操作方法

方法描述
getElementById()返回带有指定 ID 的元素。
getElementsByTagName()返回指定标签名称的所有元素(数组)
getElementsByClassName()返回所有标签中class="指定值"的元素。
appendChild()把新的子节点添加到指定节点。
removeChild()删除子节点。
replaceChild()替换子节点。
insertBefore()在指定的子节点前面插入新的子节点。
createAttribute()创建属性节点。
createElement()创建元素节点。
getAttribute()返回指定的属性值。
setAttribute()把指定属性设置或修改为指定的值。

2、访问HTM与元素的方法

  • 通过给HTML元素起id使用getElementById 方法来访问
<script>
	document.getElementById("btn"); /*这样就获取到id=btn的元素了*/
</script>
  • 通过给HTML元素的class=“名字” 使用getElementsByClassName() 来访问,这个获取的是一个数组

    <script>
      let Parr = document.getElementsByClassName("Pname");/*获取所有class="Pname的元素"*/
    </script>
    
  • 通过getElementsByTagName() 来获取HTML元素,这是通过标签的来获取的,也是一个数组

    <script>
    	let inputs = document.getElementById("main").etElementsByTagName("input");/*获取id=main下的所有input元素*/
    </script>
    
    <script>
    	let inputs = document.etElementsByTagName("input");/*获取HTML中所有的input元素*/
    </script>
    

    3、改变HTML的内容或样式

    3.1改变内容

    示例:当点击按钮时h1中的内容由 中国----->华夏

    使用了事件 在按钮上添加事件,当点击按钮时触发,然后通过innerText 把h1中的内用改变。

    同时innerText可以获取标签中的内容 用法:‘document.getElementById(“chain”).innerText’ 获取 id = chain的内容

    <!DOCTYPE html>
    <html lang="en">
    <head>
        <meta charset="UTF-8">
        <title>测试</title>
    </head>
    <body>
    
    <h1 id = "chain">中国</h1>
    <button id = 'btn'>按钮</button>
    
    </body>
    </html>
    
    <script>
        document.getElementById("btn").onclick = function () {
            document.getElementById("chain").innerText = "华夏";
        }
    </script>
    
    
    3.2改变样式

    示例:当点击按钮时h1中的内容由中国---->华夏,黑色---->红色

    <!DOCTYPE html>
    <html lang="en">
    <head>
        <meta charset="UTF-8">
        <title>测试</title>
    </head>
    <body>
    
    <h1 id = "chain">中国</h1>
    <button id = 'btn'>按钮</button>
    
    </body>
    </html>
    
    <script>
        document.getElementById("btn").onclick = function () {
            document.getElementById("chain").innerText = "华夏";
            document.getElementById("chain").style.color = "red";
        }
    </script>
    

    4、元素

    4.1添加元素

    示例:在id= main下添加一个p

    <!DOCTYPE html>
    <html lang="en">
    <head>
        <meta charset="UTF-8">
        <title>测试</title>
    </head>
    <body>
    
    <div id = "main">
    </div>
    <button id = 'btn'>添加</button>
    
    </body>
    </html>
    
    <style>
        #main{
            width: 100%;
        }
    </style>
    
    <script>
        document.getElementById("btn").onclick = function () {
            let p = document.createElement("p");
            p.innerText="从来就没有什么意外,也许你的故事并不是从快乐开始的,可这不能决定你的一生,你想要的变成什么样子,全看你自己的选择.\n"+
            "你患得患失,太在意从前,又太担心将来,有句话说得好,昨天是段历史,明天是个谜团,\n" +
                "    而今天是天赐的礼物,像珍惜礼物那样珍惜今天,越想逃避宿命,越会在半道上跟宿命撞个正着,你的思绪\n" +
                "    就像这池水一样朋友,稍有外界触动,就很难清澄明朗,可如果让它静下来,答案顿时就变得清晰了。\n" +
                "    愿我们在这繁华的世间,找到自己的摆渡人,渡尽世间的苦难。";
            p.style.fontSize = "18px";
            p.style.color="red";
            let div = document.getElementById("main");
            div.appendChild(p);
        }
    </script>
    
    4.2删除元素

    示例:删除id= “main” 中选中的p

    在删除按钮上添加事件,获取id = "main"下的所有 p,然后在每一个p上添加事件。

    <!DOCTYPE html>
    <html lang="en">
    <head>
        <meta charset="UTF-8">
        <title>测试</title>
    </head>
    <body>
    
    <div id = "main">
        <p>123</p>
        <p>456</p>
        <p>789</p>
        <p>111</p>
    </div>
    <button id = 'btn'>删除</button>
    
    </body>
    </html>
    
    <style>
        #main{
            width: 100%;
        }
    </style>
    
    <script>
        document.getElementById("btn").onclick = function () {
           let ps = document.getElementById("main").getElementsByTagName("p");
           for (let i = 0; i < ps.length; i++){
               let p = ps[i];
               p.onclick = function () {
                    let result = confirm("确定要删除\" "+p.innerText+"\"吗?");
                    if (result){
                        p.parentNode.removeChild(p);
                    }
               }
           }
        }
    </script>
    

    5、综合示例

    实现对表格数据的增加删除以及列表数据增加删除

    <!DOCTYPE html>
    <html lang="en">
    <head>
        <meta charset="UTF-8">
        <title>JS测试</title>
    </head>
    <body>
    
    <ul>
        <li>中国</li>
        <li>日本</li>
        <li>韩国</li>
    </ul>
    <button id="btn1">给ul中的每个li添加事件</button>
    <br/><br/>
    请输入国家:<input class="add" type="text"/>&nbsp;&nbsp;<button id="btn2">添加国家</button>
    <hr/>
    <br/>
    
    姓名:<input class="tab" type="text"/><br/>
    年龄:<input class="tab" type="text"/><br/>
    性别:<select class="tab"><option>男</option><option>女</option></select><br/>
    <button id="btn3">保存</button>
    <table class="user">
        <tr><td>姓名</td>
            <td>年龄</td>
            <td>性别</td>
            <td>是否删除</td>
        </tr>
        <tr><td>Tom</td>
            <td>18</td>
            <td>男</td>
            <td><a href="delete from 表名 where id = ?">删除</a></td>
        </tr>
        <tr><td>Amy</td>
            <td>18</td>
            <td>女</td>
            <td><a href="delete from 表名 where id = ?">删除</a></td>
        </tr>
        <tr><td>Jack</td>
        <td>19</td>
        <td>男</td>
        <td><a href="delete from 表名 where id = ?">删除</a></td>
    </tr>
    
    </table>
    
    </body>
    </html>
    
    <style>
        .user{
            width: 50%;
            text-align: center;
            margin-left: 25%;
        }
        input{
            width: 15%;
        }
        select{
            width: 16%;
        }
    
        #btn3{
            font-size: 15px;
            color: white;
            background-color: yellowgreen;
        }
    </style>
    
    <script>
        //删除li
        document.getElementById("btn1").onclick = function () {
            let lis = document.getElementsByTagName("li");
            for (let i = 0; i < lis.length ; i++) {
                let li = lis[i];
                li.onclick = function () {
                   let result = confirm("确定要删除"+li.innerText + "吗?");
                   if (result){
                       document.getElementsByTagName("ul")[0].removeChild(li);
                   }
                }
            }
        };
        //添加li
        document.getElementById("btn2").onclick = function () {
            let val = document.getElementsByClassName("add")[0].value;
            let li = document.createElement("li");
            li.innerText = val;
            document.getElementsByTagName("ul")[0].appendChild(li);
        };
    
        // 点击提交吧元素天机进 表格里边
        document.getElementById("btn3").onclick = function () {
            let inputs = document.getElementsByClassName("tab");
            let tr = document.createElement("tr");
            for (let i = 0; i < inputs.length; i++) {
                let td = document.createElement("td");
                td.innerText = inputs[i].value;
                tr.appendChild(td);
                if (i == inputs.length - 1){
                    let td1 = document.createElement("td");
                    let a = document.createElement("a");
                    a.innerText = "删除";
                    a.setAttribute("href","delete from ' 表名' where id = ?");
                    td1.appendChild(a);
                    tr.appendChild(td1);
                    a.onclick = function () {
                        let result = confirm("确定要删除"+inputs[0].value+"吗?");
                        if (result){
                            this.parentNode.parentNode.parentNode.removeChild(this.parentNode.parentNode);
                        }
                        return false;
                    }
                }
            }
            let table = document.getElementsByTagName("table")[0];
            table.appendChild(tr);
        };
    
        // 删除元素
        let a = document.getElementsByTagName("a");
        for (let i = 0; i < a.length; i++) {
            a[i].onclick = function () {
                let name = this.parentNode.parentNode.firstChild.innerText;
                let result = confirm("确定要删除"+name+"吗?");
                if (result){
                    this.parentNode.parentNode.parentNode.removeChild(this.parentNode.parentNode);
                }
                return  false;
            }
        }
    </script>
    

    ​

    写在最后

    传送门:DOM操作教程

什么是DOM?DOM常见的操作有哪些? 什么是DOM、DOM的作用、DOM Tree是如何形成、document顶层节点、html根节点以及根节点下的节点存在的三种关系 阅读详情

相关推荐

HTML之JavaScript DOM操作元素(1)

var aaa = document.getElementById("username") // 根据元素的id值获取页面上的唯一一个元素,有同名的则返回找到的第一个。var parentE = mmm.parentElement // 通过子元素获取父元素。2.操作元素的样式 元素.style.样式名 = "" 样式名 "-" 要进行驼峰转换。1.操作元素的属性 元素名.属性名 = ""// 语法 元素名.innerText 只识别文本。// 语法: 元素.style.样式名 = ""

录大大i的博客 1009

如何使用DOM操作HTML元素

这段代码首先通过类名为“my-element”的元素获取到了这个元素,然后修改了它的style属性中的color和fontSize,将文字颜色变成了红色,并将字体大小改为了24像素。首先,你需要获取到这个元素。这段代码首先通过类名为“my-element”的元素获取到了这个元素,然后将其父节点中的appendChild()方法调用了,将这个元素移动到了新的位置。这段代码首先通过类名为“my-element”的元素获取到了这个元素,然后修改了它的textContent属性,将它变成了新的文本内容。

2301_77795034的博客 1744

HTML-使用jQuery操作 DOM

DOM操作分为三类: DOM Core:任何一种支持DOM的编程语言都可以使用它,如getElementById() HTML-DOM:用于处理HTML文档,如document.forms CSS-DOM:用于操作CSS,如element.style.color="green" 注:JavaScript用于对(x)html文档进行操作,它对这三类DOM操作都提供了支持   jQuery对...

南劲竹的博客 850

HTML DOM 方法

本文详细介绍了HTML DOM中常用的方法,包括节点操作、样式操作、属性操作和事件操作。掌握这些方法,可以帮助开发者更好地利用DOM编程,实现丰富的网页交互效果。在实际开发过程中,请根据具体需求灵活运用这些方法,提高开发效率。

csbysj2020 492

动态DOM操作的艺术:从HTML到DOM的转换

本章深入探讨了如何将HTML字符串高效地转换成DOM结构,并将其注入到现有文档中。作者首先比较了使用innerHTML属性和手动创建DOM节点的方法,随后详细阐述了将HTML字符串转换为DOM结构的步骤,包括预处理HTML源字符串、正确处理自闭合元素,以及如何将元素包裹在适当的容器元素中。此外,本章还介绍了如何使用DOM fragments来最小化DOM操作次数,以及DOM属性与DOM对象属性之间的区别和联系。

weixin_42613360的博客 480

R3LIVE 1.0 适配 Velodyne 16线雷达:3步配置解决150米漂移问题

本文详细解析了R3LIVE 1.0适配Velodyne 16线雷达时出现的150米漂移问题,并提供三步配置方案。通过调整雷达类型设置、运动补偿与时间对齐、视觉-激光联合优化等关键参数,有效解决了系统漂移问题,提升定位精度。适用于机器人定位与建图领域的开发者。

weixin_29054195的博客 269

html DOM操作表格及样式

一 操作表格 // 标签是HTML中结构最为复杂的一个,我们可以通过DOM来创建生成它,或者HTMLDOM来操作它;      1 // 使用DOM来创建表格;  2     var table = document.createElement('table');  3     table.border = 1;  4     table.width =

xyjikl 933

信捷CODESYS平台伺服电机转矩控制模式应用与切换

信捷CODESYS二次开发软件:XS Studio 在运动控制中的转矩控制案例

weixin_64614866的博客 1万+

把一段html代码添加到dom中,在将其添加到dom之前操作由html组成的变量(jQuery 1.4中的新增功能)...

我以为我在第一次发布jQuery 1.4时已经看过这个,但现在似乎找不到任何东西。我有一个日历表,它是从json ajax响应动态构建的。该表构建在一个名为putHtml的变量中。目前,一旦将表添加到DOM中,我就运行一个showEvents函数,该函数接收每个事件并将其添加到表中的相应单元格中。不幸的是,当我有100个事件时,这意味着我正在更新DOM 100单独的时间。这变得相当慢。我使用sho...

weixin_36345456的博客 289

深入解析ADC采样电容:从充电误差到LSB精度的关键设计

本文深入解析了ADC采样电容在模数转换中的核心作用,重点探讨了充电时间常数与采样误差的博弈关系。通过推导最小采样时间公式,揭示了精度、速度、源阻抗与内部电容之间的制约关系,并提供了从理论计算到外部驱动电路设计的实战指南,是确保ADC达到LSB精度的关键。

android的专栏 1103

从ADS到HFSS:耦合线带通滤波器的设计与模型转换实战

本文详细介绍了耦合线带通滤波器的完整设计流程,重点阐述了从ADS电路级快速优化到HFSS三维电磁场精确验证的模型转换实战方法。通过对比ADS理想模型仿真与HFSS全波仿真结果,指导读者进行参数校准与迭代优化,并分享了关键的板材选择、加工误差及端口设置等避坑指南,确保设计性能与实物测试高度一致。

weixin_29290863的博客 344

dom操作插入html代码,DOM操作

dom对象的innerText和innerHTML有什么区别?innerText:innerText是一个可写属性,返回元素内包含的文本内容,在多层次的时候会按照元素由浅到深的顺序拼接其内容innerHTM:innerHTML属性作用和innerText类似,但是不是返回元素的文本内容,而是返回元素的HTML结构,在写入的时候也会自动构建DOM123456elem.children和elem.ch...

weixin_34112399的博客 2062

PS/Ai/PR/AE等adobe出现正版弹窗提示:Your non-genuine Adobe app will be disabled soon解决办法

就是用专门的清理工具下载,清理工具在文章下方。然后新建三个空的记事本文件,重命名为 Adobe Genuine Launcher.exe,AdobeGCClient.exe,AGMService.exe。在该文件目录中,分别找到 Adobe Genuine Launcher.exe,AdobeGCClient.exe,AGMService.exe,然后在防火墙入站规则里,阻止Adobe Genuine Launcher.exe,AdobeGCClient.exe,AGMService.exe。

Q82556499的博客 1万+

DOM 详细 一篇就够【重点】

DOM相关操作 JavaScript分为三个部分,我们在之前说道,JS分为三个部分,ECMAscript,DOM,和BOM;详细的在这里…JavaScript历史; 至此我们ECMAscript部分已经学完,加下来就是DOM部分,DOM是文档对象模型,顾名思义也就是操纵我们我们之前写的html部分的标签的。之前有一个大佬曾经说过,万物皆对象… DOM都有哪些操作呢? 我们先看图示: 明显看出DOM分为四个重要部分(都是操作) 操作元素内容 操作元素属性 操作表单属性 操作元素类名 操作元素内容: 我们

egg_er的博客 6281

QT下利用FFTW实现功率谱密度分析(周期图法)

写在前面 出于项目需求,需要在QT的msvc 2015编译环境下实现功率谱密度估计。 所以这个需求很直接的关键词就是 1. C++ 2. QT 3. 傅里叶变换 4. 功率谱密度估计 但是在网上搜索了很久,没有一个非常直接的答案。所以我觉得很有必要写一篇文章来说明,在QT msvc2015 32bit环境下如何实现功率谱密度估计。 本文并没有经过严格编辑,但代码是已经可以跑通的,如...

李时珍食疗志的博客 5223

3D打印机控制系统设计:基于MATLAB的3D打印机运动学建模、轨迹规划和控制

控制实现:在控制实现中,需要将轨迹规划的结果转化为实际的控制指令,控制3D打印机按照规划的轨迹进行运动。3D打印机的运动学建模:3D打印机的运动学建模是指将3D打印机的机械结构、传动系统和运动控制部件等抽象成数学模型,以便于进行控制系统的设计和分析。轨迹规划:轨迹规划是指根据3D模型的几何形状和打印机的运动学模型,计算出打印机需要执行的运动轨迹,以便于实现所需的打印效果。控制实现:控制实现是指将轨迹规划的结果转化为控制指令,控制3D打印机按照规划的轨迹进行运动。

走向CTO的路上... 2473

【JQuery框架】超详细DOM操作看这一篇就够了!

目录 写在前面 一、内容操作 1. html() 2. text() 3. val() 二、属性操作 (1)通用属性操作 1. attr(): 2. removeAttr() 3. prop() 4. removeProp() 5.attr和prop区别 (2)对class属性操作 1. addClass() 2. removeClass() 3. toggleClass() 4. css() 三、CRUD操作 1. append() 2. prepend() 3.

累计发表博客60余万字,优快云 博客专家、Java 领域优质创作者、华为云享专家、阿里云专家博主。专注分享 Java 优质文章,毕设实战项目开发,全网粉丝10W+ 4174

利用R批量计算相关系数

批量求相关系数

weixin_52073820的博客 1458

学会DOM这一篇文章就够了

DOM对象内,有数百个属性和方法。DOM对象处理的核心,就是对DOM中的进行一些增、删、改、查、事件操作、属性操作等一系列操作。DOM核心操作思维导图 是 JavaScript 中的一种方法,用于将文本或 HTML 写入到 HTML 文档中。这个方法通常用于在文档加载过程中动态生成内容。用法 content: 要写入到文档的文本或 HTML 内容。注意事项示例 写入变量值 使用 时需要小心,尤其是在文档加载后。推荐使用更现代的 DOM 操作方法,以确保更好的性能和可维护性。

dorabighead的博客 3733

Devexpress16.2.6破解工具

Devexpress16.2.6破解工具Devexpress16.2.6破解工具Devexpress16.2.6破解工具Devexpress16.2.6破解工具

怀旧版电脑GBC模拟器

再现原版GBC掌机的界面,电脑运行连游戏界面都一样大小,很怀旧,很真实,(英文版)强烈推荐,很小的文件,很难才找到的。

学习HTML DOM对象,这一篇就够了

文章目录什么是DOMDOM节点获取DOM节点更新DOM节点删除DOM节点插入DOM节点方法一appendChild()方法二insertBefore() 什么是DOM DOM( Document Object Model):文档对象模型 HTML DOM - 针对 HTML 文档的标准模型 HTML DOM 定义了所有 HTML 元素的对象和属性,以及访问它们的方法。 换言之,HTML DOM 是关于如何获取、修改、添加或删除 HTML 元素的标准 DOM节点 根据 W3C 的 HTML DOM 标准,

万里顾一程的博客 538

jre9下载 jdk9

(Java SE Runtime Environment 9.0) 9.0u175 官方最新版 【x86|x64】

DOM(一)——HTML DOM

对于B/S开发,客户端与服务器端的交互是非常必要的,JavaScript的提出解决了很多问题,AJAX的提出也解决了异步通信的问题,更加为用户着想了。而DOM是其中非常基础的知识,在学习AJAX的同时,我学习了一下DOM的相关操作,这篇重点讲一下HTML DOM的相关内容,其实就是在HTML网页上进行的各种操作。           一,概述: DOM(对象文档模型(Docume

学会改变自己——才能突破 2万+

TMS_WebGMaps_1.9.8.0_Full_Source

TMS_WebGMaps_1.9.8.0_Full_Source 全源码 delphi cbuilder

DOM 对象所有属性方法介绍,看这一篇就够了!

注意,在 1 级 DOM 中,HTMLDocument 定义了一个名为 getElementById() 的非常有用的方法。这些集合属性都源自于 0 级 DOM。很多属性和方法都是 HTMLCollection 对象(实际上是可以用数组或名称索引的只读数组),其中保存了对锚、表单、链接以及其他可脚本元素的引用。Event 对象代表事件的状态,比如事件在其中发生的元素、键盘按键的状态、鼠标的位置、鼠标按钮的状态。write() 方法值得注意,在文档载入和解析的时候,它允许一个脚本向文档中插入动态生成的内容。

酷奇的博客 6740

dom操作html,浅谈JavaScript中的DOM操作

Document Object Model(文档对象模型),提供操作文档的方法。每个html文件都视为一篇文档,操作文档实际围绕HTML标签进行。本文为大家介绍了JavaScript中的dom操作。1、理解DOM:DOM(Document Object Model ,文档对象模型)一种独立于语言,用于操作xml,html文档的应用编程接口。从两个角度理解:对于JavaScript,为了能够使Jav...

weixin_33988332的博客 533

本人对HTML元素和DOM节点之间关系的理解

这篇文章是一篇自己学习DOM相关内容之后的总结,也是方便对DOM属性和HTML属性的理解,以及使用JavaScript更好的对HTML和DOM进行操作,自我感觉官方的话特别的繁琐,不是特别好理解,都是一些书面语看起来特别的别扭,特意记录一下,方便后续回头复习,下面原本是自己记录的一大段文字,为了方便大家看,我把它分成了几小段,如果有不妥之处请评论区告诉我,以便及时修改。 1)DOM:文档对象模型,......

单枪匹码 3583

DOM 操作入门:HTML 元素操作与页面事件处理

DOM(Document Object Model)是 web 文档的标准接口。它将 HTML 和 XML 文档表示为对象的层次结构,使得开发者可以通过 JavaScript 来操作网页内容、样式和结构。简单来说,DOM 允许我们在 JavaScript 中访问和修改 HTML 元素及其属性,并且可以对页面事件进行监听和处理。通过 DOM,我们可以实现动态网页效果,比如响应用户交互、更新页面内容等。通过以上内容,你可以看到 DOM 操作在前端开发中的重要性。

Science prince的博客 1567

DOM基础及DOM操作HTML

文件对象模型(Document Object Model,简称DOM),是W3C组织推荐的处理可扩展标志语言的标准编程接口。DOM可以以一种独立于平台和语言的方式访问和修改一个文档的内容和结构。换句话说,这是表示和处理一个HTML或XML文档的常用方法。使用DOM可以使得我们在AJAX中通过HTML和XML数据进行DOM方式操作,从而做到页面动态修改更新和数据的提取处理

走在奋斗的路上 1260
上一篇: mybatis-plus代码生成器
下一篇: JavaWeb银行项目
鳳九~
博客等级 码龄8年 1384粉丝 215原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值