当前位置:首页 > JavaScript

html实现js查找

2026-04-07 17:38:44JavaScript

在HTML中实现JavaScript查找功能

HTML结合JavaScript可以轻松实现查找功能,以下是一个常见的实现方式:

<input type="text" id="searchInput" placeholder="输入搜索内容">
<button onclick="searchFunction()">搜索</button>
<div id="content">
  这是要搜索的内容区域...
</div>

<script>
function searchFunction() {
  const searchText = document.getElementById("searchInput").value;
  const content = document.getElementById("content").innerHTML;

  if(searchText) {
    const highlighted = content.replace(
      new RegExp(searchText, "gi"),
      match => `<span style="background-color: yellow">${match}</span>`
    );
    document.getElementById("content").innerHTML = highlighted;
  }
}
</script>

实现更复杂的搜索功能

对于需要更精确匹配或全文搜索的情况:

html实现js查找

function advancedSearch() {
  const query = document.getElementById("searchBox").value.toLowerCase();
  const elements = document.querySelectorAll(".searchable");

  elements.forEach(element => {
    const text = element.textContent.toLowerCase();
    element.style.display = text.includes(query) ? "block" : "none";
  });
}

使用事件监听器优化搜索体验

为输入框添加键盘事件监听,实现实时搜索:

html实现js查找

document.getElementById("searchInput").addEventListener("keyup", function() {
  const filter = this.value.toUpperCase();
  const items = document.getElementsByClassName("search-item");

  for (let i = 0; i < items.length; i++) {
    const text = items[i].textContent || items[i].innerText;
    items[i].style.display = text.toUpperCase().indexOf(filter) > -1 ? "" : "none";
  }
});

在表格中实现搜索功能

针对表格数据的搜索实现:

function searchTable() {
  const input = document.getElementById("tableSearch");
  const filter = input.value.toUpperCase();
  const table = document.getElementById("dataTable");
  const tr = table.getElementsByTagName("tr");

  for (let i = 0; i < tr.length; i++) {
    const td = tr[i].getElementsByTagName("td")[0]; // 搜索第一列
    if (td) {
      const txtValue = td.textContent || td.innerText;
      tr[i].style.display = txtValue.toUpperCase().indexOf(filter) > -1 ? "" : "none";
    }
  }
}

使用现代JavaScript特性简化代码

ES6+提供的特性可以让搜索实现更简洁:

const performSearch = () => {
  const term = searchInput.value.trim();
  const regex = new RegExp(term, "gi");

  searchResults.innerHTML = data
    .filter(item => regex.test(item.name))
    .map(item => `<div>${item.name}</div>`)
    .join("");
};

这些方法展示了HTML与JavaScript结合实现搜索功能的不同方式,可以根据具体需求选择适合的实现方案。

标签: htmljs
分享给朋友:

相关文章

js 实现vue

js 实现vue

Vue.js 的基本实现 在 JavaScript 中实现 Vue.js 的核心功能,可以通过数据绑定、响应式系统和虚拟 DOM 来实现。以下是实现 Vue.js 核心功能的简化版本。 数据响应式系…

js分组实现

js分组实现

分组实现方法 在JavaScript中,可以通过多种方式实现数组或对象的分组操作。以下是几种常见的方法: 使用Array.prototype.reduce() 通过reduce方法可以轻松实现数组分…

js实现vue路由

js实现vue路由

Vue 路由的基本实现 在 Vue.js 中实现路由功能通常使用 Vue Router 库。Vue Router 是 Vue.js 官方的路由管理器,用于构建单页面应用(SPA)。 安装 Vue R…

js图片上传实现

js图片上传实现

图片上传的基本实现 使用HTML的<input type="file">元素配合JavaScript的File API实现基础图片上传功能。HTML部分需要设置accept="image/…

js实现 拖动

js实现 拖动

实现拖动的步骤 HTML 结构 创建一个可拖动的元素和一个放置区域: <div id="draggable" draggable="true">拖动我</div> <d…

css与html制作

css与html制作

CSS与HTML制作基础 HTML(超文本标记语言)和CSS(层叠样式表)是构建网页的核心技术。HTML负责网页的结构和内容,CSS负责样式和布局。以下是两者的基本使用方法。 HTML基础结构 HT…