Home Web Front-end JS Tutorial How to use HTML, CSS and jQuery to implement advanced form auto-completion functions

How to use HTML, CSS and jQuery to implement advanced form auto-completion functions

Oct 25, 2023 am 10:28 AM
css jquery html Form autocomplete

How to use HTML, CSS and jQuery to implement advanced form auto-completion functions

How to use HTML, CSS and jQuery to implement the advanced function of form auto-completion, specific code examples are required

In most websites, the form is completed between the user and the website One of the important elements of interaction. However, this can become tedious when users frequently need to enter the same or similar data into a form. In order to improve the user experience, we can use HTML, CSS and jQuery to implement advanced features of form auto-completion, allowing users to fill in forms faster and reduce the possibility of input errors.

In this article, we will introduce how to use HTML, CSS and jQuery to create a form with auto-completion function. We'll use an example scenario, assuming we are creating a registration form with a field to fill in the user's city. We will use Ajax and JSON to obtain the city data source, and then use jQuery to implement the auto-completion function.

First, let's create the HTML structure. We need an input box and a dropdown list to display the autocomplete options. The HTML code is as follows:

<input type="text" id="city-input" />
<ul id="city-list"></ul>
Copy after login

Next, we need to add styles to the input boxes and drop-down lists. We can achieve this using CSS. Only the most basic styles are listed here, and you can adjust them according to your needs:

#city-input {
  padding: 10px;
  font-size: 16px;
  border: 1px solid #ccc;
}

#city-list {
  list-style-type: none;
  padding: 0;
  margin: 0;
  display: none; /* 初始状态下隐藏下拉列表 */
  border: 1px solid #ccc;
}
Copy after login

Next, we need to obtain the city data source. Here we assume that city data is stored in a file in JSON format named cities.json. The sample data structure is as follows:

[
  {
    "id": 1,
    "name": "北京"
  },
  {
    "id": 2,
    "name": "上海"
  },
  {
    "id": 3,
    "name": "广州"
  }
  // 其他城市数据...
]
Copy after login

In jQuery, it is very simple to use Ajax to get JSON data. We can use jQuery's $.getJSON method to achieve this. The sample code is as follows:

$.getJSON("cities.json", function(data) {
  // 处理获取的城市数据
});
Copy after login

Next, we need to write code to implement the automatic completion function. When the user starts typing in the input box, we need to trigger an event to display matching autocomplete options. We can use jQuery's keyup event to monitor user input. The sample code is as follows:

$("#city-input").keyup(function() {
  var searchQuery = $(this).val(); // 获取输入框的值

  if (searchQuery !== "") {
    // 发送Ajax请求获取匹配的城市数据
    $.getJSON("cities.json", function(data) {
      var matchingCities = [];

      // 遍历城市数据,查找匹配的城市
      $.each(data, function(index, city) {
        var cityName = city.name;

        if (cityName.indexOf(searchQuery) !== -1) {
          matchingCities.push(cityName);
        }
      });

      // 显示匹配的城市选项
      showMatchingCities(matchingCities);
    });
  } else {
    // 如果输入框为空,隐藏下拉列表
    hideCityList();
  }
});
Copy after login

In the above code, we use the keyup event to monitor the value changes of the input box. If the value of the input box is not empty, we send an Ajax request and traverse the city data to find the city that meets the search criteria. We then display these cities in a dropdown list. We also need to write two auxiliary functions, showMatchingCities and hideCityList. The functions of these two functions are to display matching city options and hide the drop-down list respectively.

function showMatchingCities(cities) {
  var $cityList = $("#city-list");
  $cityList.empty(); // 清空下拉列表中的选项

  // 遍历匹配的城市,创建选项并添加到下拉列表中
  $.each(cities, function(index, cityName) {
    var $cityOption = $("<li>" + cityName + "</li>");
    $cityList.append($cityOption);
  });

  $cityList.show(); // 显示下拉列表
}

function hideCityList() {
  var $cityList = $("#city-list");
  $cityList.hide(); // 隐藏下拉列表
}
Copy after login

Finally, we also need to add a handler function for the click event of the auto-complete option so that the selected city can be filled into the input box. The sample code is as follows:

$("#city-list").on("click", "li", function() {
  var cityName = $(this).text();
  $("#city-input").val(cityName);
  hideCityList();
});
Copy after login

In the above code, we use jQuery's on method to handle event delegation. When the user clicks an option in the dropdown, we get the name of the selected city and populate it into the input box. Then we hide the dropdown.

Through the above code examples, we can see how to use HTML, CSS and jQuery to realize the advanced function of form auto-completion. These codes can be adjusted and expanded as needed to meet different scenarios and business needs. By reducing user input effort and errors, form auto-completion will greatly improve the user experience. Hope this article is helpful to you!

The above is the detailed content of How to use HTML, CSS and jQuery to implement advanced form auto-completion functions. For more information, please follow other related articles on the PHP Chinese website!

Statement of this Website
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn

Hot AI Tools

Undresser.AI Undress

Undresser.AI Undress

AI-powered app for creating realistic nude photos

AI Clothes Remover

AI Clothes Remover

Online AI tool for removing clothes from photos.

Undress AI Tool

Undress AI Tool

Undress images for free

Clothoff.io

Clothoff.io

AI clothes remover

AI Hentai Generator

AI Hentai Generator

Generate AI Hentai for free.

Hot Article

R.E.P.O. Energy Crystals Explained and What They Do (Yellow Crystal)
3 weeks ago By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Best Graphic Settings
3 weeks ago By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. How to Fix Audio if You Can't Hear Anyone
3 weeks ago By 尊渡假赌尊渡假赌尊渡假赌
WWE 2K25: How To Unlock Everything In MyRise
4 weeks ago By 尊渡假赌尊渡假赌尊渡假赌

Hot Tools

Notepad++7.3.1

Notepad++7.3.1

Easy-to-use and free code editor

SublimeText3 Chinese version

SublimeText3 Chinese version

Chinese version, very easy to use

Zend Studio 13.0.1

Zend Studio 13.0.1

Powerful PHP integrated development environment

Dreamweaver CS6

Dreamweaver CS6

Visual web development tools

SublimeText3 Mac version

SublimeText3 Mac version

God-level code editing software (SublimeText3)

How to use bootstrap button How to use bootstrap button Apr 07, 2025 pm 03:09 PM

How to use the Bootstrap button? Introduce Bootstrap CSS to create button elements and add Bootstrap button class to add button text

How to resize bootstrap How to resize bootstrap Apr 07, 2025 pm 03:18 PM

To adjust the size of elements in Bootstrap, you can use the dimension class, which includes: adjusting width: .col-, .w-, .mw-adjust height: .h-, .min-h-, .max-h-

How to view the date of bootstrap How to view the date of bootstrap Apr 07, 2025 pm 03:03 PM

Answer: You can use the date picker component of Bootstrap to view dates in the page. Steps: Introduce the Bootstrap framework. Create a date selector input box in HTML. Bootstrap will automatically add styles to the selector. Use JavaScript to get the selected date.

How to insert pictures on bootstrap How to insert pictures on bootstrap Apr 07, 2025 pm 03:30 PM

There are several ways to insert images in Bootstrap: insert images directly, using the HTML img tag. With the Bootstrap image component, you can provide responsive images and more styles. Set the image size, use the img-fluid class to make the image adaptable. Set the border, using the img-bordered class. Set the rounded corners and use the img-rounded class. Set the shadow, use the shadow class. Resize and position the image, using CSS style. Using the background image, use the background-image CSS property.

How to write split lines on bootstrap How to write split lines on bootstrap Apr 07, 2025 pm 03:12 PM

There are two ways to create a Bootstrap split line: using the tag, which creates a horizontal split line. Use the CSS border property to create custom style split lines.

How to set up the framework for bootstrap How to set up the framework for bootstrap Apr 07, 2025 pm 03:27 PM

To set up the Bootstrap framework, you need to follow these steps: 1. Reference the Bootstrap file via CDN; 2. Download and host the file on your own server; 3. Include the Bootstrap file in HTML; 4. Compile Sass/Less as needed; 5. Import a custom file (optional). Once setup is complete, you can use Bootstrap's grid systems, components, and styles to create responsive websites and applications.

How to verify bootstrap date How to verify bootstrap date Apr 07, 2025 pm 03:06 PM

To verify dates in Bootstrap, follow these steps: Introduce the required scripts and styles; initialize the date selector component; set the data-bv-date attribute to enable verification; configure verification rules (such as date formats, error messages, etc.); integrate the Bootstrap verification framework and automatically verify date input when form is submitted.

How to set the bootstrap navigation bar How to set the bootstrap navigation bar Apr 07, 2025 pm 01:51 PM

Bootstrap provides a simple guide to setting up navigation bars: Introducing the Bootstrap library to create navigation bar containers Add brand identity Create navigation links Add other elements (optional) Adjust styles (optional)

See all articles