powered by simpleCommunicator - 2.0.36     © 2025 Programmizd 02
Форумы / HTML, JavaScript, VBScript, CSS [игнор отключен] [закрыт для гостей] / Расширенный автовыбор в SELECT'е
2 сообщений из 2, страница 1 из 1
Расширенный автовыбор в SELECT'е
    #34131492
IDVsbruck
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Посредством 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
Расширенный автовыбор в SELECT'е
    #34134584
Фотография SkyLight
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Код: 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
2 сообщений из 2, страница 1 из 1
Форумы / HTML, JavaScript, VBScript, CSS [игнор отключен] [закрыт для гостей] / Расширенный автовыбор в SELECT'е
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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