首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >如何使自动完成显示结果按特定顺序进行?

如何使自动完成显示结果按特定顺序进行?
EN

Stack Overflow用户
提问于 2015-07-30 11:07:28
回答 1查看 38关注 0票数 0

我指的是小提琴:http://fiddle.jshell.net/dryydaxq/1/

如果在文本框中键入Eng,则在“自动完成”列表中按以下顺序显示列表。

1) 英语英语

2) Guzheng

3)化学工程工程

( 4)机械工程工程

我如何使上面的列表按顺序排列,以‘英语’开头的短语显示在其他词组之上?和下面一样,英语首先以英语开头,然后化学和机械工程在中间显示为‘英语’,而古筝是最后一个。

1) 英语英语

2)化学工程工程

( 3)机械工程工程

4) Guzheng

EN

回答 1

Stack Overflow用户

发布于 2015-07-30 11:26:55

您可以在.sort()中向JavaScript提供一个比较函数。

我已经编辑了您的小提琴,现在它正确地对下拉列表进行排序。

我补充说:

代码语言:javascript
运行
复制
$('#search').on('keydown', function() {
    colors = colors.sort(function(a,b) {

           return a[1].indexOf($('#search').val()) > b[1].indexOf($('#search').val());

    })       
});

尽管请注意,这是在整个短语中“eng”的位置上排序,而不是单个单词。如果您需要对单词进行排序,那么您可以对空格字符上的sort函数中的字符串进行标记,然后从那里计算您的值。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/31722134

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档