两个小时前,有网友在论坛里问我。如何使用 HTML5 实现 文本框输入内容后带有模糊匹配的功能。这其实很简单,而且jQuery也为我们提供了相应的插件 Autocomplete.js。这不是一项新技术,百度一搜有很多相关的文章。在这里我就再分享一下如何实现这个功能。
input 输入动态提示
我们先看看运行效果图
Autocomplete.js 插件地址:http://jqueryui.com/autocomplete/
input 输入模糊提示demo
全部代码如下所示。
<!DOCTYPE HTML> <html lang="en"> <head> <meta charset="utf-8"> <meta name="viewport" content="width=device-width, initial-scale=1"> <title>实现 input 模糊匹配功能</title> <link rel="stylesheet" href="https://code.jquery.com/ui/1.12.1/themes/base/jquery-ui.css"> <link rel="stylesheet" href="http://jqueryui.com/autocomplete/resources/demos/style.css"> <script src="https://code.jquery.com/jquery-1.12.4.js"></script> <script src="https://code.jquery.com/ui/1.12.1/jquery-ui.js"></script> <script> $( function() { var availableTags = [ "", "CODE大全", "www.xttblog.com", "www.codedq.net", "Asp", "BASIC", "C", "C++", "Clojure", "COBOL", "ColdFusion", "Erlang", "Fortran", "Groovy", "Haskell", "Java", "JavaScript", "Lisp", "Perl", "PHP", "Python", "Ruby", "Scala", "Scheme" ]; $( "#tags" ).autocomplete({ source: availableTags }); } ); </script> </head> <body> <div class="ui-widget"> <label for="tags">输入内容: </label> <input id="tags"> </div> </body> </html>
在实际使用中,模糊匹配的词都是从后台查询的。我们这里只需要将source的数据源改为ajax后台查询的结果即可。如下:
<script> $( function() { $( "#tags" ).autocomplete({ source: ajaxTags() }); } ); function ajaxTags(){ return $.ajax({ url: "url", async: false, data:{tags:$('#tags').val()}, dataType:'json' }).responseText; } </script>
: » 使用 jQuery 的 Autocomplete 插件实现input输入提示功能
原创文章,作者:奋斗,如若转载,请注明出处:https://blog.ytso.com/251193.html