Javascript-форум (https://javascript.ru/forum/)
-   Общие вопросы Javascript (https://javascript.ru/forum/misc/)
-   -   Автоматическое заполнение полей формы скриптом (https://javascript.ru/forum/misc/60239-avtomaticheskoe-zapolnenie-polejj-formy-skriptom.html)

jpokorp 18.12.2015 13:47

Автоматическое заполнение полей формы скриптом
 
Все современные браузеры поддерживают автоматическое заполнение полей формы.
При регистрации на этом форуме я выбрал вариант написания своего имени в поле ИМЯ, при этом данные по почтовому ящику и его повторного написания были подставлены браузером автоматически.
.
Можно ли с помощью яваскрипта или чего-то подобного помочь клиенту максимально заполнив соответствующие поля, чтобы ему даже не пришлось выбирать.
Пусть мы даже получим не одно его имя, а сразу несколько вариантов его написания.
А клиенту останется только нажать на кнопку ОТПРАВИТЬ

laimas 18.12.2015 16:47

Цитата:

Сообщение от jpokorp
Можно ли с помощью яваскрипта или чего-то подобного помочь клиенту максимально заполнив соответствующие поля, чтобы ему даже не пришлось выбирать.

Можно, даже и не одну форму на сайте, а любую, в которой есть данные клиента. Но все это нужно делать с согласия пользователя, предупреждая о том, что его данные хотя и будут у него, но в открытом виде, и будут храниться в localStorage. Но это сугубо для тех, кто держит ворота своего компьютера открытыми настеж.

Если в любой форме полю содержащему имя присвоить id и под этим же id как ключом хранить в хранилище данные введенные пользователем, то при наличие формы на странице, проверкой в хранилище определить - если есть ключ в нем, который есть и у поля формы, то заполнить значением поле. Соответственно и с другими полями. Можно организовать и список к полю, например для адресов, в котором можно выбирать значение, можно и редактируемые списки организовать.
А запоминать данные в хранилище, нужно тогда, когда пользователь отправил форму и она была принята.

jpokorp 18.12.2015 18:57

Речь не идет о том, как и где хранить то, что пользователь внес ранее.
Речь идет о посетителе, который впервые на сайте.
Но чтобы он максимально быстро и правильно прошел регистрацию.
А для этого он должен использовать свои стандартно написанные данные:
Имя, Логин, емайл
Во всяком случае предложить ему это.

Если поля обозначены стандартно, то сам браузер заполнит их за 2 клика.
Хотелось бы, чтобы пользователю не нужно было вводить вообще ничего, а только нажать кнопку ЗАРЕГИСТРИРОВАТЬСЯ

Для этого и нужен скрипт, который бы вызывал автоматическое заполнение полей по факту прихода посетителя на страницу, или по факту проведения мышкой, или по прошествии 6 секунд например.

goodbigbeer 18.12.2015 19:03

средствами только лишь локальной страницы - вряд ли. Эти данные являются приватными, и выдрать их из браузера просто так не выйдет. Возможно, подобное можно реализовать с помощью плагина, но это явно не Ваш случай.

laimas 18.12.2015 19:29

Цитата:

Сообщение от jpokorp
Хотелось бы, чтобы пользователю не нужно было вводить вообще ничего, а только нажать кнопку ЗАРЕГИСТРИРОВАТЬСЯ

Это когда браузеры научаться по цвету глаз пользователя узнавать его имя, фамилию и пол, тогда такое будет возможно. Ну что вы городите то, пока пользователь не введет ничего, этих данных не будет у браузера, а значит и заполнить не возможно.

jpokorp 18.12.2015 22:16

Вы наверное пытаетесь примерить всех на себя. Пароли и логины храните в тетрадке. Но 95% этого не делают и регистрируются везде одинаково. Именно для них уже много лет в браузерах реализована функция автозаполнения форм. Я живой тому пример.
Обычно в одной форме несколько полей. Как только я активирую любое поле, мне показываются все варианты, которые я ранее уже вводил в поля с таким названием. Это первый "клик". Вторым я выбираю один из появившихся вариантов, и при этом автоматически заполняются поля связанные с первым полем одновременным заполнением.
Т.е. вся информация уже сохранена ранее в браузере.
Пусть она сохранена в плагине. Но этот плагин используется более чем у половины пользователей. Это именно те, кто уйдет с сайта из-за лишнего клика.

goodbigbeer 18.12.2015 23:22

jpokorp,
Но как Вы получите доступ к этим данным? Это возможно?

Deff 18.12.2015 23:26

jpokorp,
Есть фишка регистрации и входа через соц сети, есть варианты позволяющие использовать несколько соц сетей с разными логинами и емейлами. Как Вариант покопать на Хабре

jpokorp 19.12.2015 01:23

Если бы я знал все тонкости, то наверное сам бы писал скрипты. А так только делаю выводы из собственных наблюдений.
Если браузер заполняет поля по 2м кликам сохраненной им до этого информацией по равноименным полям. То Возможно существуют методы с помощью скрипта так или иначе вывести ее наружу.
Мне не очень интересны социальные сети, т.к. мои клиенты - работники предприятий у них на работе, где не очень приветствуется хождение по контактикам, а чаще просто блокируется.

laimas 19.12.2015 07:55

Цитата:

Сообщение от jpokorp
Вы наверное пытаетесь примерить всех на себя. Пароли и логины храните в тетрадке. Но 95% этого не делают и регистрируются везде одинаково. Именно для них уже много лет в браузерах реализована функция автозаполнения форм. Я живой тому пример.
Обычно в одной форме несколько полей. Как только я активирую любое поле, мне показываются все варианты, которые я ранее уже вводил в поля с таким названием.

Вы думаете я этого не знаю? То что браузер запомнил, он и сам заполнит, и скрипта не нужно, главное угадать с именем полей формы, он по ним запоминает. А чтобы самому получить... запросу с веб страницы вряд ли вам браузер сам отдаст, это конфиденциальные данные, иначе бы плакали все, будь такой доступ обеспечен.
Да и не обязательно они есть, я к примеру это всегда отключаю.

jpokorp 19.12.2015 14:33

Да, далеко не у всех наименования полей совпадают. Но никто не мешает мне сделать сразу 10 вариантов поля на каждый нужный параметр.
.
Чтобы браузер заполнил - нужно 2 клика, хотелось бы совсем без них.
.
Конечный этап все равно делает пользователь - нажимает на кнопку "Послать данные"
.
Отключающие автонабор в данном случае не интересуют - они обычно не ленивые и наберут сами все что нужно

jpokorp 19.12.2015 14:44

До того, как пользователь нажмет кнопку "Получить доступ", все данные находятся только в его компьютере и на его мониторе

laimas 19.12.2015 14:55

Цитата:

Сообщение от jpokorp
Но никто не мешает мне сделать сразу 10 вариантов поля на каждый нужный параметр.

Ну это полбеды, вторая беда, это угадать первый символ имени/данных, чтобы браузер раскрыл список, а в нем нужно выбрать.

Не полчите вы от браузера то, чего хотите, ну это же фактически дыра, одно дело согласится с заполнением и контролировать это процесс, совсем иное дело запрос скриптом и для браузера это будет фактически "анонимное поведение", паук.

jpokorp 19.12.2015 15:19

Разве нужно что-то угадывать с первой буквой?
У меня первый клик - установка активности поля - кликаю в него - начинает мигать курсор.
Кликаю туда второй раз - появляются все мои варианты данных на выбор.
кликаю третий раз по выбранному варианту - он появляется в поле
И только потом уже можно жать кнопку "Отправить"

Да, ошипся с количеством лишних кликов - их три, а не 2

laimas 19.12.2015 15:28

Вы программно пощелкайте.

jpokorp 19.12.2015 16:30

именно этого я и хочу, только не умею :)

laimas 20.12.2015 01:21

Да чего тут уметь то - document.любой_удобный_метод_по лучения_поля_формы.click().
Можно и фокус установить, можно и буковки угадывать, да мало ли чего можно, и попытайтесь чтобы браузер хотя бы раскрыл список. А ведь в списке надо еще и выбрать нужное, а для этого нужно еще найти нужное....

Для интереса попробуйте datalist доступный сейчас, попробуйте "потренироваться" с событиями в нем, расскажите что получится. И это элемент доступный в документе, а не то, чем управляет браузер.

Браузер тоже не дурак, действия пользователя он отслеживает. И странно, в такой же теме в разделе Работа вы отвергаете регистрацию по существующей в соц. сетях, не доверяя ей, и в то же время хотите использовать "дыру безопасности" браузера, которая по вашему мнению у него должна быть.

jpokorp 20.12.2015 02:19

не умею от слова совсем.
кое как умею понимать простые скрипты, когда знаю, что они должны делать. Могу что-то в нем подкорректировать под свои задачи, но не более.

Поэтому и прошу готовый скрипт как за деньги, так и просто от желающих самостоятельно поэкспериментировать.

Безопасность я оцениваю с точки зрения банального среднестатистического пользователя, который уже ожегся прокомментировав на стороннем сайте какую-то хрень и получив автоматический репост этого себе на страницу вконтакте и в новостях своих реальных друзей.

Так что никакого противоречия не вижу.

laimas 20.12.2015 02:52

Слава богу, что браузер на понятие "безопасность" смотрит иначе, чем вы. Именно по этой причине он не отдаст вам конфиденциальные данные клиента, по крайней мере в рамках веб страницы.

jpokorp 21.12.2015 22:12

ну это всего-лишь декларация, которых немало было произнесено с самых высоких трибун за последние 30 лет, но каждый месяц приходят подтверждения обратного

laimas 22.12.2015 11:29

Цитата:

Сообщение от jpokorp
ну это всего-лишь декларация

Ну так и карты вам в руки, делайте.


Часовой пояс GMT +3, время: 12:53.