首先 js 可以修改HTML中的所有元素和属性,它还可以改变CSS样式,并且可以监听到所有事件并作出响应,这篇笔记呢 主要记录如何对HTML元素进行增删改查。


1 查找DOM

第一种方式是我们最常用的:通过ID查找:

<!DOCTYPE html>
<html>
<head>
<title>learn javascript</title>
</head>
<body>
<p id="demo">你能找到我么?</p>
<button onclick="changeText()">点击改变文本</button>
</body>
{{--js--}}
<script>
function changeText(){
document.getElementById("demo").innerHTML = "ok";
}
</script>
</html>

注意:当我们写HTML的时候尽量保证ID不重复。

第二种方法:通过标签名查找

<!DOCTYPE html>
<html>
<head>
<title>learn javascript</title>
</head>
<body>
<div id="demo">
<p>hi man</p>
</div>
<button onclick="changeText()">点击改变文本</button>
</body>
{{--js--}}
<script>
function changeText(){
var element = document.getElementById("demo");
var p = element.getElementsByTagName("p");
p[0].innerHTML = "yo";
}
</script>
</html>

↑ 我们取到了ID为demo的div,然后在div中有个p元素 没有ID属性,我们就可以通过tagname来找到它。

第三种方法:通过class来查找

<!DOCTYPE html>
<html>
<head>
<title>learn javascript</title>
</head>
<body>
<div class="demo">
<p>hi man</p>
</div>
<button onclick="changeText()">点击改变文本</button>
</body>
{{--js--}}
<script>
function changeText(){
var element = document.getElementsByClassName("demo")[0];
var p = element.getElementsByTagName("p");
p[0].innerHTML = "yo";
}
</script>
</html>

2 删除DOM

<!DOCTYPE html>
<html>
<head>
<title>learn javascript</title>
</head>
<body>
<div id="div1">
<p id="p1">hi man</p>
<p id="p2">hello</p>
</div>
<button onclick="changeText()">点击改变文本</button>
</body>
{{--js--}}
<script>
function changeText(){
var div1 = document.getElementById("div1");
var p2 = document.getElementById("p2");
div1.removeChild(p2);
}
</script>
</html>

3 新增DOM

<!DOCTYPE html>
<html>
<head>
<title>learn javascript</title>
</head>
<body>
<div id="div1">
<p id="p1">hi man</p>
<p id="p2">hello</p>
</div>
<button onclick="changeText()">点击改变文本</button>
</body>
{{--js--}}
<script>
function changeText(){
// 创建P标签
var p = document.createElement("p");
// 创建文本节点
var node = document.createTextNode("新的P标签");
// 创建属性
var attr = document.createAttribute("class");
attr.value = "class p";
// p标签中添加文本节点
p.appendChild(node);
// p标签中添加属性
p.setAttributeNode(attr); var div = document.getElementById("div1");
// 添加p标签
div.appendChild(p);
}
</script>
</html>

4 修改DOM

4.1 修改DOM的内容

<!DOCTYPE html>
<html>
<head>
<title>learn javascript</title>
</head>
<body>
<div id="div1">
<p id="p1">hi man</p>
<p id="p2">hello</p>
</div>
<button onclick="changeText()">点击改变文本</button>
</body>
{{--js--}}
<script>
function changeText(){
var element = document.getElementById("p1");
element.innerHTML = "更改内容";
}
</script>
</html>

4.2 修改DOM的属性

<!DOCTYPE html>
<html>
<head>
<title>learn javascript</title>
</head>
<body>
<a href="https://www.baidu.com" id="link">链接</a>
</body>
{{--js--}}
<script>
var element = document.getElementById("link");
element.href = "https://www.google.com";
</script>
</html>

4.3 修改DOM的CSS样式

<!DOCTYPE html>
<html>
<head>
<title>learn javascript</title>
</head>
<body>
<p id="p1">文本</p>
</body>
{{--js--}}
<script>
var element = document.getElementById("p1");
element.style.color = "red";
</script>
</html>

JavaScript HTML DOM增删改查的更多相关文章

  1. javascript生成表格增删改查 JavaScript动态改变表格单元格内容 动态生成表格 JS获取表格任意单元格 javascript如何动态删除表格某一行

    jsp页面表格布局Html代码 <body onload="show()"> <center> <input type="text" ...

  2. 用 JS(JavaScript )实现增删改查

    JS小例题 学习内容: 需求 总结: 学习内容: 需求 用 JavaScript 实现简单增删改查 实现代码 <!DOCTYPE html PUBLIC "-//W3C//DTD HT ...

  3. javascript相关的增删改查以及this的理解

    前两天做了一个有关表单增删改查的例子,现在贴出来.主要是想好好说一下this. 下面贴一张我要做的表格效果. 就是实现简单的一个增删改查. 1.点击增加后自动增加一行: 2.点击保存当前行会将属性改成 ...

  4. JavaScript数组:增删改查、排序等

    直接上代码 // 数组应用 var peoples = ["Jack","Tom","William","Tod",&q ...

  5. JavaScript之DOM的增删改查

    JavaScript的组成: 1. ECMAScript-语法规范 2. Web APIs(浏览器提供的工具) (1).BOM (浏览器对象模型) (2).DOM (文档对象模型) 今天就来讲讲DOM ...

  6. JavaScript(JS)之Javascript对象DOM之增删改查(四)

    创建节点:var ele_a = document.createElement('a');添加节点:ele_parent.appendChild(ele_img);删除节点:ele_parent.re ...

  7. DOM节点的增删改查

    在开始展开DOM操作前,首先需要构建一棵DOM树. <!DOCTYPE html> <html lang="en"> <head> <me ...

  8. HTML DOM(二):节点的增删改查

    上一篇讲述了DOM的基本知识,从其得知,在DOM眼中,HTML的每个成分都可以看作是节点(文档节点.元素节点.文本节点.属性节点.注释节点,其中,属性节点是属于元素节点),本篇的内容就是通过DOM对这 ...

  9. 超详细的DOM操作(增删改查)

    操作DOM的核心就是增删改查 原文地址:https://jianshu.com/p/b0aa846f4dcc 目录 一.节点创建型API 1.1 createElement 1.2 createTex ...

随机推荐

  1. Python \xd7\xaa\xd5\xbdOTT TV\xb1\xa6\xbd\xe0 编码

    import chardet s = '\xd7\xaa\xd5\xbdOTT TV\xb1\xa6\xbd\xe0\xc7\xa3\xca\xd6\xd2\xf8\xba\xd3\xa1\xa4\x ...

  2. oracle数据库修改编码

    (1)SYSTEM  用户登录SQLPLUS        SYS是sysdba用户,不能直接登录 (2)SYSDBA登录        CONN  / as sysdba; (3)查看数据库字符集 ...

  3. 分享一个仅0.7KB的jQuery文本框输入提示插件

    由于项目需要,找过几个jQuery文本框输入提示插件来用,但总是有不满意的地方,要么体积较大,要么使用不便,要么会出现把提示文字作为文本框的值的情况.于是我们自己的开发团队制作了这个最精简易用的输入提 ...

  4. dubbo发布webservice服务

    dubbo发布webservice服务 学习了:https://blog.csdn.net/zhangyunpengchang/article/details/51567127 https://blo ...

  5. Linux——.bash_profile和.bashrc的区别(如何设置生效)

    /etc/profile:此文件为系统的每个用户设置环境信息,当用户第一次登录时,该文件被执行.并从/etc/profile.d目录的配置文件中搜集shell的设置./etc/bashrc:为每一个运 ...

  6. ant-design 实现 添加页面

    1.逻辑代码 /** * 添加用户 */ import React,{PureComponent} from 'react' import {Card,Form,Input,Select,Button ...

  7. Ubuntu 11.04 (Natty) 已经停止支持 但可以使用old-releases源了

    Ubuntu 11.04 (Natty) 已经停止支持,但可以使用old-releases源了,先备份源列表文件: sudo cp /etc/apt/sources.list /etc/apt/sou ...

  8. BZOJ 1016 JSOI 2008 最小生成树计数 Kruskal+搜索

    题目大意:给出一些边,求出一共能形成多少个最小生成树. 思路:最小生成树有非常多定理啊,我也不是非常明确.这里仅仅简单讲讲做法.关于定各种定理请看这里:http://blog.csdn.net/wyf ...

  9. 【BIEE】14_开发流程介绍

    以上是BIEE开发的流程图,通过流程图我们可以看出在BIEE中存在以下主要内容: 仪表盘 仪表盘页 分析 仪表盘提示 主题区域 Catalog RPD 以下是一些文件以及资料库存储路径 资料库存储路径 ...

  10. spring配置,spring中的bean 的id不能相同

    lib下加入包 spring.jar commons-logging.jar src下添加 applicationContext.xml <?xml version="1.0" ...