Как попросить пользователя повторно подтвердить пароль, но запретить браузеру автозаполнение или автозаполнение сохраненного пароля

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

Пользователь сохранил свое имя пользователя / пароль для входа в Chrome, поэтому всякий раз, когда пользователю требуется повторно подтвердить свой пароль, Chrome будет предлагать «Использовать пароль для [имя пользователя]», чтобы узнать, хочет ли он использовать сохраненный пароль для поля.

Пробовали autocomplete autofill = off безуспешно. Есть предположения?


person emmmm    schedule 09.11.2015    source источник
comment
Под автозаполнением autofill = off вы имеете в виду: autocomplete autofill = off или automplete="off" autofill="off"?   -  person Jonathan Lam    schedule 09.11.2015
comment
да ... хаха извините ... надо было писать в правильном синтаксисе   -  person emmmm    schedule 09.11.2015
comment
Да все в порядке. Мне просто нужно было убедиться в своем ответе, потому что на SO много нубов ... Но я рад, что вторая часть помогла!   -  person Jonathan Lam    schedule 09.11.2015


Ответы (3)


Вы сказали, что пробовали:

autocomplete autofill = off

Однако вам необходимо убедиться, что вы делаете:

autocomplete="off" autofill="off"

(как два отдельных атрибута). В противном случае для autocomplete будет установлено значение true (по умолчанию).


И, согласно этому SO-ответу, использование autocomplete="false" на <form> теперь не работает в Chrome. См. Его обходной путь:

В соответствии с этим ответом Chrome автоматически примет любое <input> прямо перед тем, как пароль станет именем пользователя. Так что поместите скрытые (display: none) <input> перед реальными входами, чтобы обмануть Chrome.

person Jonathan Lam    schedule 09.11.2015
comment
Да, синтаксис правильный ... :) Круто, ответ работает, спасибо. Я начинаю задаваться вопросом, как Google реализует свою аутентификацию, когда пользователь пытается изменить настройки учетной записи, это требует от пользователя повторного подтверждения пароля ... Я не думаю, что им нужно использовать фиктивное поле ввода ... - person emmmm; 09.11.2015

Попробуйте следующее:

  1. Убедитесь, что текстовое поле пароля имеет другое имя / идентификатор, чем любое другое используемое.
  2. Используйте autocomplete = "false" как в ФОРМЕ, так и в поле ВВОД.

В некоторых версиях Chrome есть проблемы с автозаполнением.

См. https://code.google.com/p/chromium/issues/detail?id=468153

person Shaun    schedule 09.11.2015

Практически autocomplete = false или autocomplete = off не работает, по крайней мере, в google chrome.

Так что я использую это autocomplete="new-password"

person Manchumahara    schedule 28.06.2020