首页 > 其他分享 >使选择下拉菜单可搜索

使选择下拉菜单可搜索

时间:2022-09-18 16:56:58浏览次数:105  
标签:选项 结果 占位 选择 搜索 下拉菜单

使选择下拉菜单可搜索

每个人都熟悉 HTML 选择标签,它使用户能够从可用选项中选择一个或多个。虽然这是几乎每个网站表单中最常见的功能之一,但用户滚动并找到所需的选项可能会令人沮丧。经典下拉菜单在搜索方面支持的很少,仅限于根据按下的键自动关注第一个选项。最重要的是,必须以排序方式放置选项以使其高效。使选择下拉菜单可搜索在用户体验方面具有优势,我们将在今天不到一分钟的时间内实现这一目标。

为了使下拉菜单可搜索,我们将使用 jQuery 及其库来创建名为 select2 的选择框。因此,我们的第一步是获取这些很棒的库的链接并将其放在我们的页面上。我将使用最新的 jQuery 选择2 撰写本文时的图书馆。您可以访问附加的链接以检查其他版本。

 // 样式  
 <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/select2/4.0.13/css/select2.min.css">  
 // 脚本  
 <script src="https://code.jquery.com/jquery-3.6.0.js" integrity="sha256-H+K7U5CnXl1h5ywQfKtSj8PCmoN9aaq30gDh27Xc0jk=" crossorigin="anonymous"></script>  
 <script src="https://cdnjs.cloudflare.com/ajax/libs/select2/4.0.13/js/select2.min.js"></script> 

接下来让我们通过给它一个 id 和一些选项来以正常方式制作我们的 select HTML 元素

 <select id="language">  
 <option value="js">Javascript</option>  
 <option value="java">爪哇</option>  
 <option value="go">戈朗</option>  
 <option value="c">C</option>  
 <option value="python">Python</option>  
 <option value="c#">C#</option>  
 <option value="ruby">红宝石</option>  
 </select>

我们得到一个有用但并不总是有效的选择下拉菜单。

现在要用可搜索的下拉列表替换经典的选择下拉列表,我们只需要初始化 select2 函数并根据需要传递一些属性。

 $("#language").select2();

在这个阶段,选择下拉菜单已经是可搜索的,但我们可以用它做更多的事情。例如,我们可以设置一个占位符,如果没有找到结果则显示一条消息,在显示结果之前要输入的最少字符,从 AJAX 请求中获取结果,从多个选项源合并等等。在本文中,我们将只处理一些属性,但您可以查看 文件 看看是否有任何可以满足您的需求。

为了给选择下拉一个占位符,传递一个具有“占位符”键的对象,该键包含属性“id”和“text”。为 id 提供一个空值并在 text 属性中设置所需的占位符。

 占位符:{  
 ID: '',  
 text: '选择一种语言'  
 }

接下来,当用户仅在输入一定数量的字符后才开始输入内容时,要开始缩小结果范围,请将键“minimumInputLength”设置为一个数字。当要通过网络检索数据并减少网络调用时,这通常很有用。

 最小输入长度:2

如果根据用户输入的内容没有匹配结果怎么办?那么最好显示一些自定义消息,这可以通过提供包含“结果”属性的“语言”对象来完成。此属性将返回在没有匹配选项时显示的消息。

 语: {  
 没有结果:函数(){  
 返回“未找到结果”;  
 }  
 }

通过结合上述性质,我们将得到

 $("#select").select2({  
 占位符:{  
 ID: '',  
 text: '选择一种语言'  
 },  
 最小输入长度:2,  
 语: {  
 没有结果:函数(){  
 返回“未找到结果”;  
 }  
 },  
 });

而网站上的最终结果如下

我们将在接下来的文章中讨论更多功能,但现在,请自己尝试并快乐编码

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明

本文链接:https://www.qanswer.top/37588/41441816

标签:选项,结果,占位,选择,搜索,下拉菜单
From: https://www.cnblogs.com/amboke/p/16705196.html

相关文章

  • 算法竞赛进阶指南 0x22 深度优先搜索
    AcWing165.小猫爬山翰翰和达达饲养了N只小猫,这天,小猫们要去爬山。经历了千辛万苦,小猫们终于爬上了山顶,但是疲倦的它们再也不想徒步走下山了(呜咕>_<)。翰翰和达达只好......
  • csp-j第一大题单项选择题
    要题目的在这:蓝奏云:https://wwn.lanzoum.com/ieZKm0bw9xvc  百度网盘:链接:https://pan.baidu.com/s/16PbhD5h_GmTPonb7_yoiIQ   提取码:yyc2 编辑器太难用了! ......
  • 使用Android自带文件选择器
    工具类:publicclassUriTofilePath{publicstaticStringgetFilePathByUri(Contextcontext,Uriuri){Stringpath=null;//4.4及之后的......
  • 根据条件选择pandas DataFrame中的行
    让我们看看如何根据PandasDataFrame中的某些条件选择行。使用运算符根据特定列值选择行'>','=','=','<=','!=' 。  代码#1:使用基本方法从给定数据框中选择“......
  • 选择排序
    有五个数12,-1,66,5,7,选出最大的的数的下标,把最大的数与最后的位置交换,5个数找4次最大的数即可代码如下  1#include<stdio.h>2#include<math.h>3intmain()......
  • 选择结构
    选择结构if单选择结构我们很多时候需要去判断一个东西是否可行,然后我们才去执行,这样一个过程在程序中用if语句来表示语法:if(布尔表达式){//如果布尔表达式为true......
  • 分布式搜索引擎02
    分布式搜索引擎02 在昨天的学习中,我们已经导入了大量数据到elasticsearch中,实现了elasticsearch的数据存储功能。但elasticsearch最擅长的还是搜索和数据分析。所以今......
  • Appwrite 喜欢开源:为什么我选择赞助 Offen
    Appwrite喜欢开源:为什么我选择赞助Offen开源是我们在Appwrite所做的一切的❤️,我们希望启用和促进开源社区,帮助我们成长为令人兴奋的24,000颗星GitHub.开源项目需......
  • 层次选择器
    层次选择器后代选择器简介后代选择器可以选择作为某元素后代的元素(包括儿子,孙子,重孙子)两个元素之间的层次间隔可以是无限的示例<!DOCTYPEhtml><htmllang="e......
  • 搜索力
    ● 括号[关键词]你应该输入的是“关键词”,而不是一句“疑问句”。比如我想知道日本有多少人,那我应该输入的是两个关键词:日本和人口,中间用空格分开——[日本人口]......