0

次のような複数のキーワードまたはトークンを使用した jquery オートコンプリートについて、SO で多くの質問を見てきました。

「el wo」は「hello world」に一致します (スペースを追加せずに SO のマークダウン解析を行うため、部分文字列の一致を太字にすることはできません)

同様のことを実現したいと思いますが、検索文字列にスペースを使用しません。これは、JetBrains IntelliJ およびその他の同様の製品で正常に使用されています。例えば、

acoだけでaconiteなく、admin_controller

これは、jquery および/またはブートストラップのオートコンプリートまたは先行入力プラグインで可能ですか? IntelliJ はどのようにこれを行いますか?

4

1 に答える 1

0

一致する順序はチェックされませんが、これを試すことができます:

http://jsfiddle.net/tEJdx/5/

var possible = [
    'admin_controller',
    'accommodation',
    'printer',
    'advertised',
    'aoc', // this will match even if it's in wrong order
];

$('input').keypress(function(){
    setTimeout( function() {
        var result = [], input = $('#input').val();
        possible.filter(function(element, index, array) {
            var count = 0;
            for( i in input ) {
                if( element.indexOf( input[i] ) != -1 )
                    count++;
            }
            if( count == input.length )
            result.push( element );
        });

        $('#result').html(result.join('<br/>'));
    }, 200);

});

次のような HTML を使用します。

<input id="input" />
<div id="result"></div>
于 2013-06-13T18:18:46.680 に答える