Я работаю с библиотекой jQuery UI библиотеки autocomplete. У меня есть два поля формы на веб-странице - один из них - внутренний поиск, и один ищет контент, который моя компания управляет на стороннем сайте через REST API.jQuery UI Автозаполнение на клавиатуре?
Это работает так, как должно - если у меня есть два поля формы, сидящие рядом друг с другом, я могу ввести их и получить результаты автозаполнения для этого источника данных ниже.
То, что меня попросили сделать, это объединение двух полей в одно «основное» поле поиска и скрыть два отдельных поля. Он будет искать как источников данных для ввода пользователем, так и отображать результаты в отдельных окнах с автозаполнением под полем.
Моя идея заключается в том, что если бы я мог просто изменить метод триггера для автозаполнения с «focus» на «keyup», это будет работать очень хорошо, или если бы я мог «подделать» триггер фокусировки, не отправив курсор в скрытое поле ,
Любые идеи по этому вопросу?
Update:
Вот код, который я пытался, и он не работает. Это то, что заставило меня думать, что я зависим от фокусного события.
$(function(){
// run autocomplete on form fields
searchAutocomplete('/support/results_json/','#keywords');
searchAutocomplete('/support/zdresults_json/','#zd_search');
//$('#ee_searchform').hide(); // will need this later
//$('#zd_searchform').hide(); // will need this later
$('<form id="support_search" class="group" method=""><fieldset><legend>Search Support</legend><ol><li><label for="support_keywords">Keywords</label><input type="search" value="" name="support_keywords" id="support_keywords" /></li><li class="submit"><input type="submit" name="support_submit" id="support_submit" value="Search" /></li></ol></form>').insertAfter('#zd_searchform');
$('#support_keywords').keyup(function() {
var value = $('#support_keywords').val();
$('#keywords').val(value);
$('#keywords').keyup();
});
});
Таким образом, вы можете видеть, я беру два поля формы, что HTML содержит, и убедитесь, что они называют функцию рабочего автозаполнения. Затем я использую jQuery для добавления другой формы в DOM, и когда он получает ключ, он добавляет его содержимое в одно из других полей и дает этому поле ключ. Однако это не вызывает автозаполнение.
Большое спасибо.
Что вы подразумеваете под триггером «focus»?Предложения уже отображаются на 'keyup' –