empty()方法清空元素内容但保留元素本身,用于动态更新页面前的清理。示例中$('#container').empty()将移除内部所有子节点,HTML由包含p和span变为仅剩div容器。与remove()不同,empty()不删除元素自身,适合保留结构、重置内容的场景,如清空列表、表格或AJAX请求前清理展示区域,避免破坏事件绑定,推荐用于需保留父容器的场合。

jQuery 的 empty() 方法用于清空指定元素内的所有子节点和内容,但不会移除该元素本身。这个方法常用于动态更新页面内容前的清理操作。
基本语法
$(selector).empty();调用该方法后,匹配元素内部的所有 HTML 内容都会被删除,包括文本、子标签、表单元素等,原元素仍然保留在 DOM 中,只是变成一个“空壳”。
使用示例
假设有一个 div 元素:
这是一段文字
其他内容
使用 empty() 清空内容:
$('#container').empty();执行后,HTML 变为:
注意:#container 元素还在,只是里面的内容被全部清除。
与 remove() 的区别
- empty():只清空元素内部内容,保留元素本身
- remove():将元素及其内容从 DOM 中完全删除
如果只是想刷新内容,推荐使用 empty(),避免破坏事件绑定或数据状态(除非你明确要删除整个元素)。
实际应用场景
- 清空列表或表格内容重新加载
- 重置表单容器中的动态字段
- 在 AJAX 请求返回新数据前清理旧数据展示区域
基本上就这些。empty() 方法简单直接,适合需要保留父容器结构只清除内容的场景。不复杂但很实用。










