|
|
|
| У меня возникла такая проблема.
Есть текстовое поле <input type='text' . . . >, куда нужно ввести марку автомобиля.
1) Как сделать так, чтобы когда начинаешь вводить текст, внизу появлялся раскрывающийся список со словами-подсказками (как в яндексе или гугле например)? Но чтобы также можно было написать произвольный текст (опять же как в яндексе)?
2) Какой тип <input> нужно использовать для этого?
3) Можно ли обойтись без ajax, ведь список с марками авто не такой уж объёмный, можно ли включить его в файл сразу?
4) Как сделать чтобы в следующем поле, где нужно указывать модель авто, появлялась подсказка в зависимости от выбора марки в первом поле (то есть выбираешь в первом например BMW, во втором уже будут подсказки 740, 735 ... например) ? | |
|
|
|
|
|
|
|
для: sasha1133
(27.12.2009 в 16:30)
| | Это либо ajax, либо просто JS-сценарий, если файл описаний загружается клиенту. Тут уже можно сделать чистым перебором массива описаний, сравнивая с вводом. | |
|
|
|
|
|
|
|
для: sim5
(27.12.2009 в 18:00)
| | а можно по подробнее про 2й вариант. я так понимаю создаётся поле <input type="text"> для которого есть обработчик события, когда меняется текст (onChange кажется называется). Потом производится поиск по имеющимся словам, и если находятся, то внизу выводится подсказка. Только вот не знаю, как сделать эту подсказку - с помощью <select><option> или как лучше? Хочу чтобы выглядело это как в гугле или яндексе. | |
|
|
|
|
|
|
|
для: sasha1133
(27.12.2009 в 18:29)
| | Как же вы собираетесь такое написать, если вам кажется? ) Вам ведь нужно будет решить многое для этого. select для этих целей не очень удобен, лучше выводить список в слой, который нужно позиционировать к полю ввода и раскрывать при обнаружении совпадений. | |
|
|
|
|
|
|
|
для: sim5
(27.12.2009 в 18:35)
| | Просто я только изучаю JS. Что значит выводить список в слой? С помощью <div> и z-index задать, чтобы поверх страницы было? | |
|
|
|
|
|
|
|
для: sasha1133
(27.12.2009 в 19:10)
| | Да, так, хотя это и не обязательно может быть DIV. Суть не в этом. | |
|
|
|
|
|
|
|
для: sim5
(28.12.2009 в 04:56)
| | Так а что собой представляет этот белый прямоугольник со списком слов под текстовым полем в яндексе или гугле к примеру? и как он появляется? Пробовал разобраться в коде - не получилось пока. То есть для меня важно именно как сделать именно этот прямоугольник, да так, чтоб из него можно было клавишами вверх-вниз выбирать слова (или кликом мыши). Буду очень признателен Вам, если мне объясните ) | |
|
|
|
|
|
|
|
для: sasha1133
(28.12.2009 в 05:10)
| | Для того, чтобы сделать "этот прямоуголник" необходимо знать JS. Если вы начнете изучать его с "этого прямоугольника", то значит вы его так и не познаете. Поэтому, либо забудьте о нем на время, либо поищите в сети код готовый и используйте.
Возможен и другой подход - изучение чужого кода, но чтобы его изучить, нужны базовые знания, которых у вас нет.
И что теперь делать с вами? Здесь форум, помогают в конкретных вопросах, а не читают курс лекций. Берите книгу, либо скачивайте из интернета, начинайте изучать. Тогда ответы вам будут иметь хоть какое-то воздействие, иначе вы на каждый новый ответ вам, будете задавать еще по сотне вопросов. | |
|
|
|