간단한 자동 완성 검색 기능이 필요하지만 사용자가 둘 이상의 값을 입력 할 수 있어야합니다. jQuery UI의 자동 완성 위젯 (http://jqueryui.com/autocomplete/)을 사용하고 있으며 지금까지 제안의 첫 글자 만 검색하도록 소스를 설정했습니다. 지금 추가하고 싶은 것은 사용자가 동일한 텍스트 상자에서 여러 항목을 검색 할 수있는 기능입니다. (즉, 쉼표를 다시 표시 한 후에)jQuery UI 텍스트 상자에 여러 값 자동 완성
나는이 작업이 어떻게 수행 될 수 있는지 검색하려고 노력해 왔습니다. 내가 찾은 유일한 방법은 추가 할 수있는 옵션입니다. multiple: true
(http://forum.jquery.com/topic/multiple-values-with-autocomplete). 옵션이 변경되었거나 더 이상 존재하지 않는지 알 수 없으므로 문서에 더 이상 나열되지 않습니다.
var items = [ 'France', 'Italy', 'Malta', 'England',
'Australia', 'Spain', 'Scotland' ];
$(document).ready(function() {
$('#search').autocomplete({
source: function (req, responseFn) {
var re = $.ui.autocomplete.escapeRegex(req.term);
var matcher = new RegExp('^' + re, 'i');
var a = $.grep(items, function (item, index) {
return matcher.test(item);
});
responseFn(a);
},
multiple: true
});
});
굉장한 기능! :) 내가 가진 유일한 문제는 위 코드에서 가지고있는 RegEx와 함께 작동하지 못하는 것입니다. 지금 그것이 RegEx –
을 무시하고있다. 그렇다면이 대답을 받아 들인다. –
그것이 맞다.하지만 RegEx와는 작동하지 않는다. 나는 제안이 'letter-by-letter'가 아닌 검색의 첫 글자와 일치하도록하고 싶다. 그것이 유일한 문제입니다. 내가 게시 한 코드를 보면 RegEx가이 문제를 해결할 수 있습니다. 코드가 작동하더라도 RegEx 코드를 추가하면 위의 제안 사항이 첫 단어에만 표시됩니다. –