Khi tôi đang đọc nhiều hơn và tìm kiếm nhiều hơn, tôi đã tìm thấy mã tự động hoàn thành nhiều từ xa trên trang web jquery ui. Thật buồn cười khi bạn có thể tìm kiếm và đọc trong một thời gian dài mà không gặp phải một số thông tin hữu ích rõ ràng.
trang web jquery ui .. http://jqueryui.com/autocomplete/#multiple-remote
Tôi đã sử dụng mã ví dụ bên dưới và chỉnh sửa nó cho phù hợp với ứng dụng của mình.
Nó hiện hoạt động và giải quyết được vấn đề của tôi trong ứng dụng của tôi.
$(function() {
function split( val ) {
return val.split( /,\s*/ );
}
function extractLast( term ) {
return split( term ).pop();
}
$( "#birds" )
// don't navigate away from the field on tab when selecting an item
.bind( "keydown", function( event ) {
if ( event.keyCode === $.ui.keyCode.TAB &&
$( this ).data( "ui-autocomplete" ).menu.active ) {
event.preventDefault();
}
})
.autocomplete({
source: function( request, response ) {
$.getJSON( "search.php", {
term: extractLast( request.term )
}, response );
},
search: function() {
// custom minLength
var term = extractLast( this.value );
if ( term.length < 2 ) {
return false;
}
},
focus: function() {
// prevent value inserted on focus
return false;
},
select: function( event, ui ) {
var terms = split( this.value );
// remove the current input
terms.pop();
// add the selected item
terms.push( ui.item.value );
// add placeholder to get the comma-and-space at the end
terms.push( "" );
this.value = terms.join( ", " );
return false;
}
});
});