Forum Webscript.Ru

Программирование => JavaScript & JScript => Тема начата: Veosys от 01 Ноября 2004, 13:42:26

Название: Поле ввода в форму как поле ввода адреса в броузере - с автоподстановкой
Отправлено: Veosys от 01 Ноября 2004, 13:42:26
Есть ли возможность сделать поле ввода данных в форму как поле ввода адреса в броузере, например, - с автоподстановкой по мере ввода букв подходящих данных (из базы MySQL  в частности). Т.е. чем больше букв - тем короче список. Вопрос в форуме уже задавался, но ответа так никто и не дал. Может у кого свежие идеи есть? Заранее спасибо ответы.
Название: Поле ввода в форму как поле ввода адреса в броузере - с автоподстановкой
Отправлено: Меняздесьдавнонет от 01 Ноября 2004, 13:53:16
можно. ловить введенные буквы и проверять по списку.
сверять с mysql можно только в интранете.
Название: Поле ввода в форму как поле ввода адреса в броузере - с автоподстановкой
Отправлено: commander от 01 Ноября 2004, 15:19:03
Veosys
Игра не стоит свеч, а результат труда...
Название: Поле ввода в форму как поле ввода адреса в броузере - с автоподстановкой
Отправлено: Veosys от 01 Ноября 2004, 19:21:43
RomikChef
Собсно оно и будет в интранете. Вернее даже чаще всего на локальной машине. Посему нельзя ли поподробнее - пример кода или ссылочку где посмотреть как конкретно можно эту задачу решить.
Название: Поле ввода в форму как поле ввода адреса в броузере - с автоподстановкой
Отправлено: Меняздесьдавнонет от 02 Ноября 2004, 00:28:40
Veosys
учи яваскрипт и какой-нибудь серверный язык.
Тогда сам поймешь, как сделать.
А без этого и примеры давать бессмысленно
Название: Поле ввода в форму как поле ввода адреса в броузере - с автоподстановкой
Отправлено: Veosys от 02 Ноября 2004, 01:04:54
RomikChef
Спасибо большое за такую неоценимую помощь в виде совета учится учится и еще раз учится, но по моему данный форум существует именно для того чтобы задавать конкретные вопросы и получать по возможности конкретные ответы, а не советы учить язык. К сожалению у меня в данной конкретной ситуации нет времени изучать яву с нуля и изобретать велосипед. Имея некоторое представление о программировании и конкретный пример можно разобратся в куске кода на яве и применить его для своих нужд. Так что в примерах есть очень конкретный смысл.
Название: Поле ввода в форму как поле ввода адреса в броузере - с автоподстановкой
Отправлено: Меняздесьдавнонет от 02 Ноября 2004, 01:41:41
Цитировать
Veosys:
и получать по возможности конкретные ответы

извини, что не оправдал твоих надежд.
Цитировать
Veosys:
а не советы учить язык

К сожалению, наши мнения тут расходятся. Лично я считаю, что форум предназначен именно для советов учить язык.
Цитировать
Veosys:
К сожалению у меня в данной конкретной ситуации нет времени изучать яву с нуля

Это нет проблема. По известной формуле "время-деньги" ты просто нанимаешь программиста, который все тебе сделает.
Цитировать
Veosys:
Имея некоторое представление о программировании

Вот именно. К сожалению, ты такого представления не имеешь, а я не люблю тратить свое время зря.
Цитировать
Veosys:
в примерах есть очень конкретный смысл.

А я разве против? Берю любой пример, какой тебе понравится.
Яваскрипт - язык открытый. Берешь исходный код страницы - и вот тебе готовй вожделенный пример.
Название: Поле ввода в форму как поле ввода адреса в броузере - с автоподстановкой
Отправлено: commander от 02 Ноября 2004, 10:06:08
Veosys
 
Цитировать
Вернее даже чаще всего на локальной машине.

Можно покапаться в стандартных библетеках, прости господи microsoft (Visual C++, Visual basic, и т.д.) ... только тут я тебе, извени, не помошник...
Название: Поле ввода в форму как поле ввода адреса в броузере - с автоподстановкой
Отправлено: Veosys от 02 Ноября 2004, 11:09:09
RomikChef
Цитировать
RomikChef:
Берешь исходный код страницы - и вот тебе готовй вожделенный пример.

Моя просьба заключалась именно в том, чтобы заполучить исходный код страницы с полем ввода хотя бы отдаленно  похожим на нужное мне.
Цитировать
RomikChef:
Вот именно. К сожалению, ты такого представления не имеешь, а я не люблю тратить свое время зря.

Да уж, зачем же тратить свое драгоценное время  на помощь начинающим, если можно потратить его на восхваление своей крутости , голословные утверждения о том что все осталные о программировании "представления не имеют" и оттачивании своего "как бы чувства юмора". Причем просмотрев остальные Ваши ответы на форуме я не особо удивился, обнаружив что большинство из них носят вышеуказанный характер и уж никак не способствуют ответам на заданные вопросы. Прошу извинить остальных участников форума за треп не по теме ветки.
Название: Поле ввода в форму как поле ввода адреса в броузере - с автоподстановкой
Отправлено: commander от 02 Ноября 2004, 11:54:18
Veosys
Ошибочно полагать что эта проблемма решаеться несколькими строчками кода! Это довольно сложная задача требующая довольно больших знаний... Так что требовать однозначного ответа тут просто глупо... Если вы всё же желаете самостоятельно решить её... то тут можно порекомендовать глудокое изучение одного из серверных языков + Javascript + БД ... Либо как уже писалось нанять опытного программиста... Либо купить готовый скрипт. Других вариантов просто нет...
Название: Поле ввода в форму как поле ввода адреса в броузере - с автоподстановкой
Отправлено: Меняздесьдавнонет от 02 Ноября 2004, 11:57:05
Цитировать
Veosys:
Моя просьба заключалась именно в том, чтобы заполучить исходный код страницы с полем ввода хотя бы отдаленно похожим на нужное мне

Извини, у меня под руками такой нету.
Писать специально для тебя я не вижу смысла. ведь поле ввода такое нужно не мне, а тебе.

К тому же, как я неоднократно указывал, такое поле тебе для свзяи с базой не поможет, поскольку тебе понадобится еще знание како-го нибудь серверного языка и умение связать его с яваскриптом.
Поскольку у тебя ничего такого не наблюдается, я делаю совершенно закономерный вывод о бесполезности траты на тебя времени, который ты принял за вывод в собственной крутости.
Название: Поле ввода в форму как поле ввода адреса в броузере - с автоподстановкой
Отправлено: Veosys от 02 Ноября 2004, 22:26:59
commander
Спасибо и на этом. Я в общем то не требовал конкретного ответа любой ценой и на халяву. Знание того что задача нетривиальная и не имеет ГОТОВЫХ ПРОСТЫХ решений тоже ответ на вопрос "ЕСТЬ ЛИ ВОЗМОЖНОСТЬ сделать поле ввода...". Просто по первой реакции мне показа лась что такие решения есть.
RomikChef
Цитировать
RomikChef:
Писать специально для тебя я не вижу смысла. ведь поле ввода такое нужно не мне, а тебе.

Ну в таком случае зачем вообще тратить твое (раз уж мы перешли на ТЫ) драгоценное время на ответы в этом форуме. Ведь это ВСЕГДА нужно не тебе а задающему вопрос. Если ответ требует серьезных усилий для решения - тогда так сразу и напиши. Это зачастую (как в моем случае, например) уже само по себе ответ на вопрос. А делать заявления "я умный и знаю как сделать но заморачиваться мне лень да к тому же ты все равно не поймешь"  только ради желания высказать свое мнение по поводу чужых умственных способностей ничем кроме дешевых понтов и хамства по моему не являются.
Название: Поле ввода в форму как поле ввода адреса в броузере - с автоподстановкой
Отправлено: ThE0ReTiC от 06 Ноября 2004, 01:05:15
commander
штепсель для осла написать типа...
неблагодарное это дело.
хотя и поможет =)
Название: Поле ввода в форму как поле ввода адреса в броузере - с автоподстановкой
Отправлено: 3D Bob от 21 Ноября 2004, 16:05:06
Создается массив из данных берущихся из мускула.
На странице делается поле, и по мере буквы сверяется с данными из масива, тем самы появляется отдельный слой, где выводятся подходщие...И делается так что если жать на подходщие они вставляются в поле

Вот алгаритм...
На самом деле люди правильно сказали игра не стоит свеч а время результата...
Название: Поле ввода в форму как поле ввода адреса в броузере - с автоподстановкой
Отправлено: virka от 10 Декабря 2004, 23:02:24
ASP подойдет?
Название: Поле ввода в форму как поле ввода адреса в броузере - с автоподстановкой
Отправлено: Veosys от 11 Декабря 2004, 14:14:27
virka
Подойдет, а что таки есть готовое решение? Было бы очень благодарен!
Название: Поле ввода в форму как поле ввода адреса в броузере - с автоподстановкой
Отправлено: virka от 14 Декабря 2004, 12:57:04
Немного разгребусь, и может чего-нить смогу предложить.
Решение есть, наверное, всегда, не всегда готовое.
Для ASP нужен сервер. У Вас какая ОС?
Название: Поле ввода в форму как поле ввода адреса в броузере - с автоподстановкой
Отправлено: Veosys от 14 Декабря 2004, 17:30:46
virka
ОС Windows XP Pro. Сервер IIS. Так что с ASP никаких проблем.
Название: Поле ввода в форму как поле ввода адреса в броузере - с автоподстановкой
Отправлено: virka от 27 Декабря 2004, 12:38:36
Обещанного 3 года ждут, немного появилось времени, привожу код.
Теоретически все просто, как здесь уже и писали.
1.Формируется массив со значениями из базы данных.
2.Потом он сверяется с набираемой строкой, формируя массив для вывода в окно.
Для первого я использую ASP (PHP просто не знаю), делаете это любым из известных Вам способов. В моем случае это выглядит так:

#
<%@Language=JavaScript%>
<%
//создаете серверный объект Recordset
var rsd=Server.CreateObject("ADODB.Recordset");
//инструкция на языке SQL копирования значений поля goldwords из таблицы tabWords, сортируя их по алфавиту
var mySQL="SELECT goldwords FROM tabWords ORDER BY goldwords";
//открываете объект и выполняете инструкцию, список значений заносится в объект
//до этого должен быть создан источник данных ODBC для соединения с Вашей базой данных, в данном случае он носит имя testdsn
rsd.Open(mySQL,"DSN=testdsn");
%>
#

Дальше все значения серверного объекта переносятся в клиентский массив

#


автоподстановка


#

Само тело документа:

#




.





#

Стили я не определял, хотя так сделать будет, конечно, удобнее.
В данном случае я рассмотрел только подстановку с помощью мышки, события клавиатуры (стрелочки и enter) остались в стороне, просто нет времени, разберетесь сами.
Я все это привожу только в плане идеи, результат действительно может не стоить труда, да и готовые сценарии предлагать - дело неблагодарное. Надеюсь, цели Ваши были именно понять, а не просто применить (иначе Вам надо было поместить свою тему в поиске скрипта). Приведенный мной код вполне рабочий в среде Windows Server IIS5+ и IE5+ в интернете и в интранете, но от конкретных условий может дорабатываться. Например, при большом количестве сверяемых значений можно разбить исходный массив на субмассивы по алфавиту и т.п.
Да, еще, документ должен иметь расширение .asp и должны быть правильно настроены IIS и ODBE.
База данных у меня Acces, для MySQL все тоже должно работать, но возможно есть некие нюансы, правда, по идее, они должны касаться только подключения к базе данных, на сам код это влиять не должно. Напишите, получилось у Вас чего-нибуть или нет.
Кстати, XP теперь содержит IIS? В первых версиях с ним были проблеммы, я из-за этого вернулся на 2000.