Firefox запоминает неверные данные имени пользователя - PullRequest
6 голосов
/ 21 октября 2011

Я видел похожие вопросы, но ничего, что, похоже, не решало проблему, с которой я столкнулся.

У меня есть двухэтапный процесс регистрации. На первой странице вы вводите адрес электронной почты, на 2-м шаге вы вводите пароль (и другие детали).

Firefox предлагает запомнить ваши данные, но в качестве имени пользователя принимает поле даты рождения (последнее текстовое поле перед полем пароля). Адрес электронной почты скрыт на странице.

Кто-нибудь знает, как я могу сказать Firefox, что поле адреса электронной почты является идентификатором пароля?

Я знаю, что могу использовать autocomplete = "off", но мы все же хотим, чтобы пользователь запомнил свой пароль, только с правильными значениями.

Большое спасибо

Ответы [ 3 ]

3 голосов
/ 16 ноября 2016

Проблема

Firefox берет поле прямо перед полем password как ваше username, независимо от name, id или autocomplete атрибутов.

Решение

Поместите ваше поле username и поле password рядом друг с другом.


Примечание. Отключение autocomplete указывает Firefox забыть данные формы, но если это форма регистрации, Firefox все равно спросит пользователя, хочет ли он сохранить учетные данные (хранящиеся отдельно от данных формы),Для имени пользователя всегда будет предложено сохранить поле прямо перед паролем.

2 голосов
/ 21 октября 2011

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

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

EDIT ---

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

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

1 голос
/ 31 января 2017

Я был свидетелем такого поведения и в Chrome (и клиенты сообщали об этом в IE), так что это не просто проблема Firefox.А именно, как сказала Нелу, текстовое поле, которое появляется перед полем пароля (то есть поле с именем = "пароль"), обрабатывается как поле имени для входа, независимо от его имени и т. Д. Еслиесть другие поля формы, которые не являются «текстовыми», они будут игнорироваться.

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

Я думаю, что это пример того, как браузер слишком полезен.

...