Гость
Форумы / HTML, JavaScript, VBScript, CSS [игнор отключен] [закрыт для гостей] / Расширенный автовыбор в SELECT'е / 2 сообщений из 2, страница 1 из 1
15.11.2006, 19:32
    #34131492
IDVsbruck
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Расширенный автовыбор в SELECT'е
Посредством JavaScript реализовал выбор элемента из списка по 3 первым символам:

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
var enteredText = "";
function changeKey()
{
	var element = document.getElementById("my_element");
	symbolCode = (document.all) ? event.keyCode : arguments.callee.caller.arguments[ 0 ].which;
	enteredText += (String.fromCharCode(symbolCode)).toLowerCase();
	for (i =  0 ; i < element.options.length; i++) {
		foundedText = (element.options[i].value.slice( 0 , enteredText.length)).toLowerCase();
		if (enteredText == foundedText) {
			element.selectedIndex = i;
			return true;
		}
	}
	if (enteredText.length ==  3 ) enteredText = "";
}

То есть вводим символы, ищется сопоставление, при введении 4-того символа поиск начинается сначала.
Если результат я вывожу, скажем, в каком-то INPUT'е, то выдает правильный результат.
Но !!! в SELECT'е работает автовыбор по первому символу и как от него избавиться, я не знаю. Может, кто-то сталкивался и знает как это можно сделать.
...
Рейтинг: 0 / 0
16.11.2006, 18:38
    #34134584
SkyLight
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Расширенный автовыбор в SELECT'е
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
var text = '';
function sel(_){
    var code = event.keyCode;
    text += String.fromCharCode(code);
    for(var i =  0 ; i < _.options.length; i++)
        if(_.options[i].text.search(text) > - 1 )
            _.options[i].selected = true;
}

Код: plaintext
1.
2.
3.
<select onkeypress="sel(this)">
...
</select>
...
Рейтинг: 0 / 0
Форумы / HTML, JavaScript, VBScript, CSS [игнор отключен] [закрыт для гостей] / Расширенный автовыбор в SELECT'е / 2 сообщений из 2, страница 1 из 1
Целевая тема:
Создать новую тему:
Автор:
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]