Я использую функцию автозаполнения jQuery UI.
$("#search").autocomplete({
minLength: 0,
source: 'source.php',
select: function( event, ui ) {
$("#search").val(ui.item.label);
return false;
},
focus: function(event, ui) {
$("#search").val(ui.item.label);
return false;
}
});
Я вставляю несколько элементов в source.php и возвращаю их в кодировке json.
$search[] = array(
'value' => $id,
'label' => $name
);
echo json_encode($search);
Когда я начинаю печатать в поле автозаполнения, отображается список с элементами source.php. Но, к сожалению, со всеми из них. Они не фильтруются в зависимости от того, что я ввожу в поле.
Есть ли какая-либо особая опция, которую я должен установить при работе с json?
РЕДАКТИРОВАТЬ: Благодаря T.J. Crowder Я придумал это решение, чтобы jQuery справился со своей задачей; )
$.getJSON('source.php', function(search) {
$("#search").autocomplete({
minLength: 0,
source: search,
select: function( event, ui ) {
$("#search").val(ui.item.label);
return false;
},
focus: function(event, ui) {
$("#search").val(ui.item.label);
return false;
}
});