Twitter Typeahead.js 문자열 내에서 일치하는 모든 요소를 반환하는 방법

켄지

기본적으로 twitter typeahead.js는 문자열의 시작 부분과 일치하는 요소 만 반환합니다. 예를 들면 다음과 같습니다.

출처 : [ 'type', 'typeahead', 'ahead']

쿼리 : '유형'

반환 : 'type'및 'typeahead'

-

검색어 : '앞서'

반환 : 'ahead'

'ahead'및 'typeahead'를 반환하고 싶습니다.

내 코드 :

var clients = new Bloodhound({
    datumTokenizer: function(d) { return Bloodhound.tokenizers.whitespace(d.value); },
    queryTokenizer: Bloodhound.tokenizers.whitespace,
    limit: 10,
    prefetch: {
        url: '/clients.json',
        filter: function(list) {
            return $.map(list, function(value) { return { name: value }; });
        }
    }
});

clients.initialize();

$('.client').typeahead(null, {
    displayKey: 'value',
    source: clients.ttAdapter(),
    minLength: 1,
});

이미 질문이 있지만 대답을 이해하지 못했습니다.

켄지

해결책을 찾았습니다 ... 문제는 제가 부트 스트랩 2 자동 완성 기능에 너무 익숙해서 그 datumTokenizer일을 이해하지 못했다는 것입니다. 다른 사람이 이해하기 어렵다면 아래에 약간의 설명을 추가하겠습니다.

queryTokenizer : 쿼리중인 단어 배열, 'test abcd'를 쿼리하면 문자열을 [ 'test', 'abcd']로 변환하고이 두 단어와 일치하는 항목을 찾습니다.

datumTokenizer : queryTokenizer와 일치시킬 단어 배열입니다. JSON의 각 항목에는 일치시킬 단어 세트가 있습니다.

따라서 출처가있는 경우 :

[ '좋은 테스트', '나쁜 테스트']

'est'를 쿼리합니다. datumTokenizer가 다음과 같이 'est'를 포함하는 배열을 반환하도록해야합니다.

첫 번째 항목의 경우 [ 'good', 'test', 'ood', 'od', 'test', 'est', 'st']

두 번째 항목의 경우 [ 'bad', 'ad', 'test', 'est', 'st']

Bellow는 제가 작성한 코드입니다. 최적의 코드인지는 모르겠지만 어쨌든 도움이 될 것 같습니다.

new Bloodhound({
    datumTokenizer: function(d) {
        var test = Bloodhound.tokenizers.whitespace(d.value);
            $.each(test,function(k,v){
                i = 0;
                while( (i+1) < v.length ){
                    test.push(v.substr(i,v.length));
                    i++;
                }
            })
            return test;
        },
    queryTokenizer: Bloodhound.tokenizers.whitespace, 
    limit: 10,
    prefetch: {
        url: '/lista.json',
        ttl: 10000
    }
});

이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.

침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제

에서 수정
0

몇 마디 만하겠습니다

0리뷰
로그인참여 후 검토

관련 기사

분류에서Dev

Regex를 사용하여 Panda에서 문자열 내의 모든 대문자를 반환하는 방법

분류에서Dev

Angular js에서 모든 자식 요소를 제거하는 방법

분류에서Dev

스칼라 배열의 모든 요소에 문자를 추가하는 방법

분류에서Dev

문자열에서 모든 문자를 제거하는 방법

분류에서Dev

bash- 파일에서 문자열을 검색하고 일치하는 모든 위치를 반환

분류에서Dev

문자열에서 일치하는 단어를 사용하여 모든 단어를 얻는 방법

분류에서Dev

문자열의 모든 요소를 int로 변환하는 방법

분류에서Dev

MongoDB에서 배열 일치 기준의 요소를 반환하는 방법

분류에서Dev

mongodb에서 일치하는 모든 하위 문자열을 바꾸는 방법

분류에서Dev

Google 시트에서 배열의 모든 요소를 일치시키는 방법

분류에서Dev

특정 문자열을 배열의 모든 요소에 연결하는 방법

분류에서Dev

Python Regex를 사용하여 주어진 문자열에서 모든 정확한 일치를 찾는 방법

분류에서Dev

자바의 문자열에서 모든 '\'문자를 제거하는 방법

분류에서Dev

Panda를 사용하여 JSON 문자열의 모든 요소를 테이블에 출력하는 방법

분류에서Dev

문자열에서 모든 "평일 단어"를 제거하는 방법

분류에서Dev

모든 자식 요소를 반복하고 찾은 요소를 반환하는 방법은 무엇입니까?

분류에서Dev

여러 파일에서 문자열을 검색하고 모든 파일 정보 (예 : 'dir')를 powershell에서 반환하는 방법은 무엇입니까?

분류에서Dev

포함 된 목록 내에서 일치하는 필드가있는 모든 문서를 찾는 방법

분류에서Dev

xmlstarlet에서 자식 요소의 가능한 모든 부모 요소를 나열하는 방법

분류에서Dev

json 배열의 내용-js를 사용하여 모든 요소를 얻는 방법

분류에서Dev

Java의 문자열에서 모든 정크 문자를 제거하는 방법

분류에서Dev

QBasic의 사용자 정의 유형 내에서 모든 범위의 문자열 요소를 선언하는 방법은 무엇입니까?

분류에서Dev

Excel의 셀에서 일치하는 모든 문자열의 시작 문자 위치를 검색하는 방법이 있습니까?

분류에서Dev

mysql 데이터베이스로 보내는 동안 특수 문자에서 모든 배열 요소를 이스케이프하는 방법

분류에서Dev

모든 문서를 반환하지 않는 모든 쿼리와 일치

분류에서Dev

모든 엔터티에 대해 EF Core에서 문자열 열거 형 변환기를 설정하는 일반적인 방법

분류에서Dev

배열에서 스왑 된 모든 요소를 얻는 방법

분류에서Dev

numpy로 모든 행에 다른 수의 문자열 요소를로드하는 방법

분류에서Dev

한 번에 2D 문자열의 모든 요소를 입력하는 방법은 무엇입니까?

Related 관련 기사

  1. 1

    Regex를 사용하여 Panda에서 문자열 내의 모든 대문자를 반환하는 방법

  2. 2

    Angular js에서 모든 자식 요소를 제거하는 방법

  3. 3

    스칼라 배열의 모든 요소에 문자를 추가하는 방법

  4. 4

    문자열에서 모든 문자를 제거하는 방법

  5. 5

    bash- 파일에서 문자열을 검색하고 일치하는 모든 위치를 반환

  6. 6

    문자열에서 일치하는 단어를 사용하여 모든 단어를 얻는 방법

  7. 7

    문자열의 모든 요소를 int로 변환하는 방법

  8. 8

    MongoDB에서 배열 일치 기준의 요소를 반환하는 방법

  9. 9

    mongodb에서 일치하는 모든 하위 문자열을 바꾸는 방법

  10. 10

    Google 시트에서 배열의 모든 요소를 일치시키는 방법

  11. 11

    특정 문자열을 배열의 모든 요소에 연결하는 방법

  12. 12

    Python Regex를 사용하여 주어진 문자열에서 모든 정확한 일치를 찾는 방법

  13. 13

    자바의 문자열에서 모든 '\'문자를 제거하는 방법

  14. 14

    Panda를 사용하여 JSON 문자열의 모든 요소를 테이블에 출력하는 방법

  15. 15

    문자열에서 모든 "평일 단어"를 제거하는 방법

  16. 16

    모든 자식 요소를 반복하고 찾은 요소를 반환하는 방법은 무엇입니까?

  17. 17

    여러 파일에서 문자열을 검색하고 모든 파일 정보 (예 : 'dir')를 powershell에서 반환하는 방법은 무엇입니까?

  18. 18

    포함 된 목록 내에서 일치하는 필드가있는 모든 문서를 찾는 방법

  19. 19

    xmlstarlet에서 자식 요소의 가능한 모든 부모 요소를 나열하는 방법

  20. 20

    json 배열의 내용-js를 사용하여 모든 요소를 얻는 방법

  21. 21

    Java의 문자열에서 모든 정크 문자를 제거하는 방법

  22. 22

    QBasic의 사용자 정의 유형 내에서 모든 범위의 문자열 요소를 선언하는 방법은 무엇입니까?

  23. 23

    Excel의 셀에서 일치하는 모든 문자열의 시작 문자 위치를 검색하는 방법이 있습니까?

  24. 24

    mysql 데이터베이스로 보내는 동안 특수 문자에서 모든 배열 요소를 이스케이프하는 방법

  25. 25

    모든 문서를 반환하지 않는 모든 쿼리와 일치

  26. 26

    모든 엔터티에 대해 EF Core에서 문자열 열거 형 변환기를 설정하는 일반적인 방법

  27. 27

    배열에서 스왑 된 모든 요소를 얻는 방법

  28. 28

    numpy로 모든 행에 다른 수의 문자열 요소를로드하는 방법

  29. 29

    한 번에 2D 문자열의 모든 요소를 입력하는 방법은 무엇입니까?

뜨겁다태그

보관