>  기사  >  웹 프론트엔드  >  jQuery를 사용하여 HTML 페이지 텍스트 상자에 퍼지 일치 쿼리를 구현하는 단계에 대한 자세한 설명

jQuery를 사용하여 HTML 페이지 텍스트 상자에 퍼지 일치 쿼리를 구현하는 단계에 대한 자세한 설명

php中世界最好的语言
php中世界最好的语言원래의
2018-05-22 14:10:481854검색

이번에는 jQuery를 사용하여 HTML 페이지에서 텍스트 상자에 대한 퍼지 일치 쿼리를 구현하는 단계에 대해 자세히 설명하겠습니다. HTML 페이지에서 텍스트 상자에 대한 퍼지 일치 쿼리를 구현하는 jQuery의 주의 사항은 다음과 같습니다. 실제 사례를 살펴보겠습니다.

이 기능은 프로젝트에서 사용해야 합니다. EasyUI에서 Combobox를 사용하고 온라인에서 해당 솔루션을 검색했지만, 여전히 비교적 순수한 것을 좋아하기 때문에 직접 작성했습니다. 비교적 간단하지만 여전히 사용할 수 있습니다. 내 프로젝트에서도 사용했습니다. 필요한 경우 코드를 복사하여 직접 수정하면 됩니다.

다음은 순수 html+css+jquery 코드입니다.

<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
  <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
  <script src="http://libs.baidu.com/jquery/2.0.0/jquery.min.js"></script>
  <title>jQuery模糊匹配查询</title>
  <style type="text/css">
    #p_main {
      margin: 0 auto;
      width: 300px;
      height: 400px;
      border: 1px solid black;
      margin-top: 50px;
    }
    #p_txt {
      position: relative;
      width: 200px;
      margin: 0 auto;
      margin-top: 40px;
    }
    #txt1 {
      width: 99%;
    }
    #p_items {
      position: relative;
      width: 100%;
      height: 200px;
      border: 1px solid #66afe9;
      border-top: 0px;
      overflow: auto;
      display: none;
    }
    .p_item {
      width: 100%;
      height: 20px;
      margin-top: 1px;
      font-size: 13px;
      line-height: 20px;
    }
  </style>
</head>
<body>
  <p id="p_main">
    <!--表单的autocomplete="off"属性设置可以阻止浏览器默认的提示框-->
    <form autocomplete="off">
      <p id="p_txt">
        <!--要模糊匹配的文本框-->
        <input type="text" id="txt1" />
        <!--模糊匹配窗口-->
        <p id="p_items">
          <p class="p_item">周杰伦</p>
          <p class="p_item">周杰</p>
          <p class="p_item">林俊杰</p>
          <p class="p_item">林宥嘉</p>
          <p class="p_item">林妙可</p>
          <p class="p_item">唐嫣</p>
          <p class="p_item">唐家三少</p>
          <p class="p_item">唐朝盛世</p>
          <p class="p_item">奥迪A4L</p>
          <p class="p_item">奥迪A6L</p>
          <p class="p_item">奥迪A8L</p>
          <p class="p_item">奥迪R8</p>
          <p class="p_item">宝马GT</p>
        </p>
      </p>
    </form>
  </p>
</body>
</html>
<script type="text/javascript">
  //弹出列表框
  $("#txt1").click(function () {
    $("#p_items").css('display', 'block');
    return false;
  });
  //隐藏列表框
  $("body").click(function () {
    $("#p_items").css('display', 'none');
  });
  //移入移出效果
  $(".p_item").hover(function () {
    $(this).css('background-color', '#1C86EE').css('color', 'white');
  }, function () {
    $(this).css('background-color', 'white').css('color', 'black');
  });
  //文本框输入
  $("#txt1").keyup(function () {
    $("#p_items").css('display', 'block');//只要输入就显示列表框
    if ($("#txt1").val().length <= 0) {
      $(".p_item").css('display', 'block');//如果什么都没填,跳出,保持全部显示状态
      return;
    }
    $(".p_item").css('display', 'none');//如果填了,先将所有的选项隐藏
    for (var i = 0; i < $(".p_item").length; i++) {
      //模糊匹配,将所有匹配项显示
      if ($(".p_item").eq(i).text().substr(0, $("#txt1").val().length) == $("#txt1").val()) {
        $(".p_item").eq(i).css('display', 'block');
      }
    }
  });
  //项点击
  $(".p_item").click(function () {
    $("#txt1").val($(this).text());
  });
</script>

이 기사의 사례를 읽으신 후 방법을 마스터하셨다고 생각합니다. 더 흥미로운 내용을 보려면 다음 페이지의 다른 관련 기사를 주목하세요. PHP 중국어 웹사이트!

추천 자료:

vue-router3.0 버전 router.push에서 페이지를 새로 고칠 수 없습니다. 처리 방법

Js 클래식 케이스 코드 분석

위 내용은 jQuery를 사용하여 HTML 페이지 텍스트 상자에 퍼지 일치 쿼리를 구현하는 단계에 대한 자세한 설명의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.