如何定义自定义在JavaScript排序函数? [英] How to define custom sort function in javascript?

查看:96
本文介绍了如何定义自定义在JavaScript排序函数?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我用atocomplete.jquery插件提示输入文本,结果我得到这个数组:

  ['白023','白','白的花','TEATR']

当我开始寻找的东西多数民众赞成在TE开头的子字符串它显示我数组排序是这样的:

 '白','白023,白花,TEATR

我需要的东西是这样的:

 'TEATR','白','白023,白花

任何想法?


解决方案

这可能是因为该插件是区分大小写的。尝试输入而不是'德''特'。你也许可以有你的结果设置为不区分大小写。这<一个href=\"http://stackoverflow.com/questions/4985026/php-mysql-jquery-ajax-autocomplete-case-sensitivity\">SO问题可能的帮助。

有关数组的自定义排序功能,可以使用任何JavaScript函数,并把它作为参数,像这样的数组排序方法 -

\r
\r

VAR阵列= ['白023','Ahite,白花 'TEATR','Yeatr'];\r
\r
中的Array.sort(\r
          函数(X,Y)\r
          {\r
             返回X&GT; ÿ;\r
          }\r
        );\r
// TEATR白白023白的花\r
文件撰写(阵列);

\r

\r
\r


  

这里更多信息
     
的Array.sort


I use atocomplete.jquery plugin to suggest input text, as the result i get this array:

['White 023','White','White flower', 'Teatr']

When i start to search something thats begin from "te" substring it shows me array sorting like this:

'White','White 023','White flower', 'Teatr'

I need something like this:

 'Teatr','White','White 023','White flower'

Any ideas?

解决方案

It could be that the plugin is case-sensitive. Try inputting 'Te' instead of 'te'. You can probably have your results setup to not be case-sensitive. This SO question might help.

For a custom sort function on an Array, you can use any javascript function and pass it as parameter to an Arrays sort method like this-

var array = ['White 023','Ahite','White flower', 'Teatr', 'Yeatr'];

array.sort(
          function(x, y)
          {
             return x > y;
          }
        );
// Teatr White White 023 White flower
document.write(array);

More Info here on Array.sort

这篇关于如何定义自定义在JavaScript排序函数?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆