Javascript-форум (https://javascript.ru/forum/)
-   Общие вопросы Javascript (https://javascript.ru/forum/misc/)
-   -   Как называется кука.... (https://javascript.ru/forum/misc/45306-kak-nazyvaetsya-kuka.html)

Chekist 23.02.2014 07:11

Как называется кука....
 
Добрый день!
Пишу авторизацию пользователей.
На событиях "keyup" и "change" висит функция валидации данных и отвечает на них красивой иконкой с крестом либо зеленой галочкой.
Все хорошо, когда пользователь первый раз на сайте - ввел данные, получил "ок" по каждому из полей и вошел.
Проблемы начинаются если пользователь после этого сохранил пароль с логином для этого сайта и входит на него второй раз - форма уже заполнена и проверки по ней автоматически не происходит.
Решил ситуацию - по таймауту при документреди автоматически запускать проверку заполненности и валидности этих полей - все ок, НО в таком случае эта функция запускается и для тех кто зашел в первый раз и сразу видит непонятные кресты у пустых еще незаполненных полей - мол данные не валидны (не гуд и не красиво).

Нужно решение!

Т.е. зашел первый раз - вводи данные, получай валидность по каждому полю и вперед. Нет проверки автозаполненных полей и нет непонятных крестов у пустых полей.
Зашел второй раз - идет проверка заполненных полей.

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

Chekist 23.02.2014 08:45

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

Chekist 23.02.2014 09:37

Решил не заморачиваться и сделал autocomplete="off"...

danik.js 23.02.2014 10:55

Цитата:

Сообщение от Chekist
все ок, НО в таком случае эта функция запускается и для тех кто зашел в первый раз

Неужели не додумался проверять значение на пустоту полей. Если по таймауту поля пустые - едем дальше. Если не пустые - значит сработала автоподстановка, делаем валидацию. Все же в крайней степени очевидно, не? Зачем юзера лишать удобства автозаполнения?

danik.js 23.02.2014 10:55

Кстати, при автозаполнении разве не срабатывает событие input?

kostyanet 24.02.2014 11:18

Цитата:

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

На сервере проверится.

Или вы на сервере уже не проверяете, типа веруете в иконки с крестами? В дух, так сказать, животворящий. Ну ждите когда ломанут. Отправить форму на ваш сервер можно вообще ничего не загружая, то есть выкосив в доме иконки и кресты и все молитвы на js сделать там свой домик с красным уголком.

kostyanet 24.02.2014 11:22

Все что попало в браузер принадлежит юзеру. Все что принадлежит юзеру подлежит тщательной проверке и санации в порядке применения.

Chekist 24.02.2014 23:53

Цитата:

Сообщение от danik.js (Сообщение 299041)
Кстати, при автозаполнении разве не срабатывает событие input?

Не подскажите, что это за событие такое?
Не могу его почему-то найти тут...

Chekist 24.02.2014 23:55

Цитата:

Сообщение от kostyanet (Сообщение 299174)
На сервере проверится.

На сервере все успешно проверяется.
Но цель - создать user-friendly интерфейс на JS, а уж потом, естественно, обработать и на сервере.

Chekist 25.02.2014 00:37

Цитата:

Сообщение от danik.js (Сообщение 299040)
Неужели не додумался проверять значение на пустоту полей. Если по таймауту поля пустые - едем дальше. Если не пустые - значит сработала автоподстановка, делаем валидацию. Все же в крайней степени очевидно, не? Зачем юзера лишать удобства автозаполнения?

Спасибо за простой и оч полезный совет!
Иногда сидишь и сам себе трудности придумываешь, когда ответ очевиден :)


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