2012-02-08 5 views
1

큰 선택 상자에서 10 ~ 1000 개의 옵션을 검색하려면 jQuery 플러그인이 필요합니다. http://harvesthq.github.com/chosen/이 처음에는 실행 가능한 것으로 보였지만 기능 또는 대체 플러그인을 변경해야합니다.jQuery 큰 선택 상자 검색

저는 10-1000 개의 옵션 범위의 일련의 선택 상자가 있습니다. 사용자가 원하는 옵션과 일치하는 문자열을 입력 할 때 선택 상자의 필터를 제공하는 방법이 필요합니다. 나는 위대 해 보이고 기능적이며 현재의 HTML로 구현하기가 쉬운 http://harvesthq.github.com/chosen/을 발견했다.

내 유일한 문제는 검색이 단어 중간에있는 것이 아니라 단어의 시작 부분에서만 일치한다는 것입니다. 선택된 웹 페이지의 첫 번째 예를 참조하십시오. "알바"는 "알바니아"와 일치하지만 "바니아"는 "알바니아"와 일치하지 않습니다. 내 선택 목록에서 대부분의 옵션이 끝에 숫자로 구분되기 때문에 "바니아"가 "알바니아"와 일치하는 솔루션이 필요합니다. 누구든지이 기능을 사용하기 위해 Chosen을 변경 한 경험이 있습니까? 아니면 기능이 뛰어나고 구현하기 쉽지만이 기능을 제공하는 다른 jQuery 플러그인이 있습니까? 나는 다른 플러그인을 검색하고 발견했지만 멋진 스타일이 없거나 구현하기가 더 어려워 보입니다.

+0

도움이되기를 바랍니다 지금 중복 gre로 뭔가 만들기 선택된 다중 선택으로. – Stormchao

답변

1

와우, 이것은 제가 처음으로 들어 본 적이 있고 그것은 대단합니다!

은 기본적으로 내가이 라인 (chosen.jquery.js 라인 732) 발견 :

regex = new RegExp('^' + searchText.replace(/[-[\]{}()*+?.,\\^$|#\s]/g, "\\$&"), 'i'); 

을 그리고 바로이 '^'는 다음과 같이 제거 :

regex = new RegExp(searchText.replace(/[-[\]{}()*+?.,\\^$|#\s]/g, "\\$&"), 'i'); 

는 이렇게, 나는 발견에 그 데모, "바니아"이제 알바니아를 찾으십시오.

  • 것은이 선택해야합니다 : 물론

    이 당신에 대해 생각 할 수 있습니다 ... 몇 가지 다른 일을 찾고 15 분?

  • 어쩌면 winnow_results가 완전히 다른

    } 경우로 시작하는 위의 변화, 예를 들어, 라인에 맞게 다시 작성해야합니다 (option.html.indexOf ("") (아마도 사용자에게 체크 박스를 제공) > = 0

가 '나는 또한 http://jqueryui.com/demos/autocomplete/을 고려했지만 나는 그것의 예를 찾을 수없는이

+0

이 솔루션은 훌륭하게 작동합니다. 나는 그것을 시험하고 이것이 어떤 문제를 일으키는 지 알아보기 위해 함수를 살펴볼 것입니다. 그러나 이것이 완벽한 해답 인 것 같습니다. 감사. – Stormchao