Начальная оговорка: я новичок в jquery и javascript.
Я недавно начал использовать плагин автозаполнения jquery с bassistance.de. Вчера я нашел плагин fcbkListSelection (http://www.emposha.com/javascript/fcbklistselection-like-facebook-friends-selector.html) и использую его для включения селектора в моем приложении.
Теперь я хочу объединить две функциональные возможности, поскольку в моем списке селекторов много элементов. Чтобы быть более конкретным, я хочу поместить текстовое поле «Фильтровать по имени» над объектом выбора списка facebook в моем HTML. Когда пользователь вводит несколько символов в текстовое поле «Фильтровать по имени», я хочу, чтобы элементы в селекторе списка Facebook отображали только элементы, содержащие напечатанные символы - что-то вроде того, что уже делает автозаполнение, а не Результаты показаны ниже поля ввода текста, я хочу, чтобы они динамически обновляли объект списка facebook.
Возможно ли это и относительно просто? Если да, то может кто-нибудь описать, как это сделать? Если нет, есть ли более простой способ приблизиться к этому? Спасибо!
Хорошо, к комментарию Спенсер Рупорт, я думаю, у меня уже может быть более конкретный вопрос. Ниже приведен текущий Javascript в моем файле HTML (угловые скобки представляют теги Django). # offer1 и #fcbklist делают разные части, но как мне заставить их общаться друг с другом? Нужно ли мне в дальнейшем писать javascript в моем HTML-файле или мне нужно настраивать кишки плагинов .js? Это помогает уточнить?
$ (документ) .ready (function () {
var names = [];
var count = 0;
{% для a, b, c в friends_for_picker%}
names [count] = "{{b}}";
количество = количество + 1;
{% endfor%}
function findValueCallback(event, data, formatted) {
$("<li>").html( !data ? "No match!" : "Selected: " + formatted).appendTo("#result");
}
function formatItem(row) {
return row[0] + " (<strong>id: " + row[1] + "</strong>)";
}
function formatResult(row) {
return row[0].replace(/(<.+?>)/gi, '');
}
$("#suggest1").autocomplete(names, {
multiple: true,
mustMatch: false,
autoFill: true,
matchContains: true,
});
//id(ul id),width,height(element height),row(elements in row)
$.fcbkListSelection("#fcbklist","575","50","4");
});