Автодополнение
Имеем массив текстовых значений:
var db = [ "drawLine", "drawCircle", "fill", ... ]; Есть тестовое поле, к которому нужно прикрутить функцию "автодополнения". Т.е. начинаем писать - "dra", а она должна показать возможные варианты (как в поиске Google и т.п.). |
Bebarr Swallow, попробуйте jQuery AutoComplete
|
Да ну этот jQuerry. Мне что-то попроще.
Пока такое сделал:
<input type="text" id="autocomplete" />
<div id="autocomplete_result"></div>
<script>
var db = [
"drawLine",
"drawCircle",
"fill"
];
autocomplete.addEventListener("keyup", function() {
if(!autocomplete.value) {
autocomplete_result.innerHTML = "";
return;
}
var a = new RegExp("^" + autocomplete.value, "i");
for(var x = 0, b = []; x < db.length; x++) {
if(a.test(db[x])) b.push(db[x]);
}
autocomplete_result.innerHTML = b.join("<br>");
});
</script>
|
Вот так получилось довольно не дурно - http://jsfiddle.net/Yz2FZ/embedded/result/
|
Решил сохранить в файл а получаю только это:
Uncaught SyntaxError: Unexpected token ILLEGAL AutoComplete.html:89 Главное что на сайте работает! А в файле не хочет. Вот ссылка на файл - http://rghost.ru/private/40057345/5c...ae4f463420f103. Буду благодарен, если кто скажет в чем проблема. |
Bebarr Swallow, все работает, только для IE нужно использовать attachEvent
http://javascript.ru/tutorial/events/intro |
Цитата:
UPD: удалил и написал заново последнюю строку - все заработало |
| Часовой пояс GMT +3, время: 07:42. |