Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 23.02.2014, 07:11
Аспирант
Отправить личное сообщение для Chekist Посмотреть профиль Найти все сообщения от Chekist
 
Регистрация: 31.10.2013
Сообщений: 38

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

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

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

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

Последний раз редактировалось Chekist, 23.02.2014 в 07:13.
Ответить с цитированием
  #2 (permalink)  
Старый 23.02.2014, 08:45
Аспирант
Отправить личное сообщение для Chekist Посмотреть профиль Найти все сообщения от Chekist
 
Регистрация: 31.10.2013
Сообщений: 38

Скорее всего не получится, т.к. разные браузеры хранят данные в разных местах и это кажется даже и не куки...
Тогда вопрос - как принудительно запретить браузеру предлагать сохранить пароль?
Ответить с цитированием
  #3 (permalink)  
Старый 23.02.2014, 09:37
Аспирант
Отправить личное сообщение для Chekist Посмотреть профиль Найти все сообщения от Chekist
 
Регистрация: 31.10.2013
Сообщений: 38

Решил не заморачиваться и сделал autocomplete="off"...
Ответить с цитированием
  #4 (permalink)  
Старый 23.02.2014, 10:55
Аватар для danik.js
Профессор
Отправить личное сообщение для danik.js Посмотреть профиль Найти все сообщения от danik.js
 
Регистрация: 11.09.2010
Сообщений: 8,804

Сообщение от Chekist
все ок, НО в таком случае эта функция запускается и для тех кто зашел в первый раз
Неужели не додумался проверять значение на пустоту полей. Если по таймауту поля пустые - едем дальше. Если не пустые - значит сработала автоподстановка, делаем валидацию. Все же в крайней степени очевидно, не? Зачем юзера лишать удобства автозаполнения?
__________________
В личку только с интересными предложениями
Ответить с цитированием
  #5 (permalink)  
Старый 23.02.2014, 10:55
Аватар для danik.js
Профессор
Отправить личное сообщение для danik.js Посмотреть профиль Найти все сообщения от danik.js
 
Регистрация: 11.09.2010
Сообщений: 8,804

Кстати, при автозаполнении разве не срабатывает событие input?
__________________
В личку только с интересными предложениями
Ответить с цитированием
  #6 (permalink)  
Старый 24.02.2014, 11:18
Профессор
Отправить личное сообщение для kostyanet Посмотреть профиль Найти все сообщения от kostyanet
 
Регистрация: 23.10.2010
Сообщений: 2,718

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

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

Последний раз редактировалось kostyanet, 24.02.2014 в 11:20.
Ответить с цитированием
  #7 (permalink)  
Старый 24.02.2014, 11:22
Профессор
Отправить личное сообщение для kostyanet Посмотреть профиль Найти все сообщения от kostyanet
 
Регистрация: 23.10.2010
Сообщений: 2,718

Все что попало в браузер принадлежит юзеру. Все что принадлежит юзеру подлежит тщательной проверке и санации в порядке применения.
Ответить с цитированием
  #8 (permalink)  
Старый 24.02.2014, 23:53
Аспирант
Отправить личное сообщение для Chekist Посмотреть профиль Найти все сообщения от Chekist
 
Регистрация: 31.10.2013
Сообщений: 38

Сообщение от danik.js Посмотреть сообщение
Кстати, при автозаполнении разве не срабатывает событие input?
Не подскажите, что это за событие такое?
Не могу его почему-то найти тут...
Ответить с цитированием
  #9 (permalink)  
Старый 24.02.2014, 23:55
Аспирант
Отправить личное сообщение для Chekist Посмотреть профиль Найти все сообщения от Chekist
 
Регистрация: 31.10.2013
Сообщений: 38

Сообщение от kostyanet Посмотреть сообщение
На сервере проверится.
На сервере все успешно проверяется.
Но цель - создать user-friendly интерфейс на JS, а уж потом, естественно, обработать и на сервере.
Ответить с цитированием
  #10 (permalink)  
Старый 25.02.2014, 00:37
Аспирант
Отправить личное сообщение для Chekist Посмотреть профиль Найти все сообщения от Chekist
 
Регистрация: 31.10.2013
Сообщений: 38

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



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Как вы относитесь к наркоманам? Maxmaxmaximus7 Оффтопик 7 05.02.2014 13:29
Решение проблемы кодировок для AJAX и PHP без iconv (cp1251 в AJAX) Serge Ageyev AJAX и COMET 10 24.04.2013 20:48
Как сделать как в JQ? faforty Общие вопросы Javascript 8 14.11.2011 01:35
JS классы - как объединить функции в класс olga153b Events/DOM/Window 3 01.11.2011 14:13
как запустить функцию JavaScript maydep Общие вопросы Javascript 8 26.03.2009 06:17