📜  搜索框输入键 javascript (1)

📅  最后修改于: 2023-12-03 15:10:11.986000             🧑  作者: Mango

在网页中添加搜索框并实现搜索功能

如果你想在你的网页中添加一个搜索框,那么你可以使用HTML和CSS来创建搜索框的外观,然后使用JavaScript来实现搜索的功能。

创建搜索框

首先,可以使用HTML创建搜索框的外观

<form>
  <input type="text" placeholder="在此输入搜索关键字...">
  <button type="submit">搜索</button>
</form>

这个代码片段创建了一个包含文本输入框和提交按钮的form元素。输入框的type属性设置为text,而提交按钮是一个button元素,其type属性设置为submit。占位符文本会在输入框中显示,以向用户提示他们应该在其中输入什么内容。

使用CSS美化搜索框

接下来,可以使用CSS样式来美化搜索框的外观。

form {
  position: relative;
  display: inline-block;
}

input[type="text"] {
  padding: 10px;
  border: none;
  border-radius: 20px;
  box-shadow: 0px 10px 20px rgba(0, 0, 0, 0.1);
  font-size: 18px;
  width: 300px;
}

button[type="submit"] {
  position: absolute;
  top: 0;
  right: 0;
  padding: 10px 20px;
  background-color: #5cb85c;
  border: none;
  color: #fff;
  font-size: 18px;
  border-radius: 0 20px 20px 0;
  cursor: pointer;
}

这个代码片段为搜索框添加了几个CSS样式:

  • position: relative将搜索框元素的定位设置为相对,以便于设置子元素的绝对定位。
  • display: inline-block使搜索框本身呈现出block元素的外观但具有inline元素的行为,这意味着它将在文本流中显示。
  • padding将输入框的填充量设置为10像素。
  • border定义输入框的无边框外观。
  • border-radius为输入框添加了一个20像素的圆角。
  • box-shadow定义输入框周围的盒子阴影。
  • font-size设置字体大小为18像素。
  • width将输入框的宽度设置为300像素。
  • position: absolute将提交按钮设置为绝对定位。
  • top: 0right: 0将按钮放置在输入框的右上角。
  • background-color定义按钮的背景颜色。
  • border定义按钮的无边框外观。
  • color设置按钮中的文本颜色。
  • font-size设置字体大小为18像素。
  • border-radius为按钮添加一个圆角。

最终的搜索框的外观应该是这样的:

搜索框

实现搜索功能

在搜索框代码中添加JavaScript来实现搜索功能。

<form onsubmit="search(); return false;">
  <input type="text" placeholder="在此输入搜索关键字...">
  <button type="submit">搜索</button>
</form>

这个代码片段将form元素的onsubmit属性设置为一个JavaScript函数search()。函数return false;是用来防止表单默认的提交行为,以便我们可以处理它的搜索请求。

接下来,可以创建一个名为search()的JavaScript函数,来获取用户输入的关键字并实现搜索。

function search() {
  var query = document.querySelector("input[type='text']").value;
  // 在这里执行搜索操作
}

这个JavaScript代码片段会获取用户输入的搜索关键字并将其存储在一个名为query的变量中。接下来,你可以在函数中执行你的搜索操作,例如向服务器发送AJAX请求来获取搜索结果。

function search() {
  var query = document.querySelector("input[type='text']").value;
  var xhr = new XMLHttpRequest();
  xhr.open("GET", "http://example.com/search?q=" + query, true);
  xhr.onreadystatechange = function() {
    if (xhr.readyState === XMLHttpRequest.DONE && xhr.status === 200) {
      // 处理搜索结果
    }
  };
  xhr.send();
}

这个JavaScript代码片段使用XMLHttpRequest对象向服务器发送GET请求,并在响应处理函数中处理搜索结果。注意:这只是演示搜索的一个示例,具体的实现因服务端不同而异。

总结

添加搜索框并实现搜索功能需要通过HTML和CSS创建外观,并使用JavaScript实现搜索操作。其中,CSS样式可以美化搜索框,JavaScript代码可以获取用户输入并向服务器发送请求获取搜索结果。