用js写一个真的百度搜索框
时间: 2024-04-06 18:30:59 浏览: 103
好的,以下是一个简单的 HTML 和 JavaScript 实现的百度搜索框:
```html
<!DOCTYPE html>
<html>
<head>
<title>百度搜索框</title>
</head>
<body>
<input type="text" id="searchInput" placeholder="请输入搜索内容">
<button onclick="search()">搜索</button>
<script>
function search() {
var keyword = document.getElementById("searchInput").value;
window.location.href = "https://www.baidu.com/s?wd=" + encodeURIComponent(keyword);
}
</script>
</body>
</html>
```
这个搜索框中,我们使用了一个 `input` 元素作为搜索框,在用户输入搜索关键词后,点击搜索按钮,就会调用 `search()` 方法,该方法会获取用户输入的搜索关键词,然后通过 `window.location.href` 将用户重定向到百度搜索结果页面。
需要注意的是,我们使用 `encodeURIComponent()` 函数对搜索关键词进行编码,以避免出现特殊字符导致搜索失败的情况。
相关问题
用react写一个百度搜索框
好的,以下是一个简单的百度搜索框的 React 代码:
```javascript
import React, { useState } from "react";
const SearchBox = () => {
const [searchTerm, setSearchTerm] = useState("");
const handleInputChange = (event) => {
setSearchTerm(event.target.value);
};
const handleSubmit = (event) => {
event.preventDefault();
window.location.href = `https://www.baidu.com/s?wd=${searchTerm}`;
};
return (
<form onSubmit={handleSubmit}>
<input
type="text"
placeholder="请输入搜索关键词"
value={searchTerm}
onChange={handleInputChange}
/>
<button type="submit">搜索</button>
</form>
);
};
export default SearchBox;
```
这个组件包含一个 input 和一个 button 元素,用户输入搜索关键词后,点击搜索按钮,会跳转到百度搜索页面,并在搜索框中显示用户输入的关键词。
用js+html+css写出一个百度搜索框要有下拉菜单
好的,下面是一个简单的实现:
```html
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>百度搜索框</title>
<style>
#search-container {
position: relative;
display: inline-block;
}
#search-input {
padding: 10px;
width: 300px;
border: 1px solid #ccc;
border-radius: 5px;
font-size: 16px;
outline: none;
}
#search-dropdown {
position: absolute;
top: 40px;
left: 0;
z-index: 1;
background-color: #fff;
border: 1px solid #ccc;
border-radius: 5px;
padding: 10px;
display: none;
}
#search-dropdown ul {
list-style: none;
margin: 0;
padding: 0;
}
#search-dropdown li {
padding: 5px 10px;
cursor: pointer;
}
#search-dropdown li:hover {
background-color: #f5f5f5;
}
</style>
</head>
<body>
<div id="search-container">
<input type="text" id="search-input" placeholder="请输入搜索内容">
<div id="search-dropdown"></div>
</div>
<script>
const searchInput = document.getElementById("search-input");
const searchDropdown = document.getElementById("search-dropdown");
searchInput.addEventListener("input", function() {
// 发送请求获取下拉菜单内容,这里用假数据代替
const data = ["百度一下", "百度翻译", "百度知道", "百度贴吧", "百度文库", "百度地图"];
// 清空下拉菜单
searchDropdown.innerHTML = "";
if (this.value) {
// 根据输入内容生成下拉菜单
data.filter(item => item.includes(this.value)).forEach(item => {
const li = document.createElement("li");
li.innerHTML = item;
li.addEventListener("click", function() {
searchInput.value = item;
searchDropdown.style.display = "none";
});
searchDropdown.appendChild(li);
});
searchDropdown.style.display = "block";
} else {
searchDropdown.style.display = "none";
}
});
</script>
</body>
</html>
```
这个实现包含一个输入框和一个下拉菜单,当输入框中有内容时,会根据输入内容生成下拉菜单。用户可以通过鼠标点击下拉菜单中的选项来选择搜索内容。
阅读全文