如何定义自定义在JavaScript排序函数? [英] How to define custom sort function in 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函数,并把它作为参数,像这样的数组排序方法 -
VAR阵列= ['白023','Ahite,白花 'TEATR','Yeatr'];\r
\r
中的Array.sort(\r
函数(X,Y)\r
{\r
返回X&GT; ÿ;\r
}\r
);\r
// TEATR白白023白的花\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);
这篇关于如何定义自定义在JavaScript排序函数?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!