【WEB开发.js】getElementById :通过元素id属性获取HTML元素

getElementById 是 JavaScript 中常用的一个 DOM 方法,用于通过元素的 id 属性获取文档中对应的 HTML 元素。这个方法返回的是一个包含该元素的引用,如果没有找到指定的元素,则返回 null

语法:

javascript 复制代码
document.getElementById(id);
  • id :一个字符串,表示目标元素的 id 属性值。id 必须是唯一的,即在一个文档中不能有多个元素拥有相同的 id

返回值:

  • 如果找到具有指定 id 的元素,返回该元素对象(如 HTMLDivElementHTMLInputElement 等)。
  • 如果没有找到该元素,返回 null

示例:

假设有一个简单的 HTML 页面:

html 复制代码
<!DOCTYPE html>
<html>
<head>
    <title>getElementById Example</title>
</head>
<body>
    <div id="message">Hello, world!</div>
    <button id="changeTextBtn">Change Text</button>

    <script>
        // 获取元素
        var messageElement = document.getElementById("message");
        var buttonElement = document.getElementById("changeTextBtn");

        // 为按钮添加点击事件
        buttonElement.onclick = function() {
            messageElement.textContent = "Text has been changed!";
        };
    </script>
</body>
</html>

在这个例子中:

  1. document.getElementById("message") 获取到 id="message"<div> 元素。
  2. document.getElementById("changeTextBtn") 获取到 id="changeTextBtn"<button> 元素。

当用户点击按钮时,message 元素的文本会被修改为 "Text has been changed!"

常见用法:

  • 修改内容:

    javascript 复制代码
    document.getElementById("example").innerHTML = "New Content";
  • 修改样式:

    javascript 复制代码
    document.getElementById("example").style.color = "blue";
  • 访问输入字段的值:

    javascript 复制代码
    var inputValue = document.getElementById("inputField").value;
  • 控制可见性:

    javascript 复制代码
    document.getElementById("example").style.display = "none"; // 隐藏元素

注意事项:

  1. id 在整个文档中应该是唯一的,如果存在多个相同 id 的元素,getElementById 只会返回第一个找到的元素。
  2. getElementById 是最常用和高效的 DOM 查询方法之一,因此它在大多数情况下会比其他方法(如 querySelector)更为快速。
相关推荐
贩卖纯净水.5 分钟前
webpack其余配置
前端·webpack·node.js
码上奶茶14 分钟前
HTML 列表、表格、表单
前端·html·表格·标签·列表·文本·表单
抹茶san35 分钟前
和 Trae 一起开发可视化拖拽编辑项目(1) :迈出第一步
前端·trae
风吹头皮凉1 小时前
vue实现气泡词云图
前端·javascript·vue.js
南玖i1 小时前
vue3 + ant 实现 tree默认展开,筛选对应数据打开,简单~直接cv
开发语言·前端·javascript
南枝异客1 小时前
三数之和-力扣
开发语言·javascript·数据结构·算法·leetcode·排序算法
小钻风33661 小时前
深入浅出掌握 Axios(持续更新)
前端·javascript·axios
萌萌哒草头将军1 小时前
🚀🚀🚀尤雨溪推荐的这个库你一定要知道!轻量⚡️,优雅!
前端·vue.js·react.js
三门1 小时前
docker安装mysql8.0.20过程
前端