ЕДИНСТВЕННОЕ место, где для поля пароля может быть целесообразно сохранить свое значение, находится в форме «регистрации», когда форма не проходит проверку, и проблема проверки НЕ связана с паролем или подтверждением пароля.
я есть типичная форма регистрации с двумя полями пароля.
<form>
<%= Html.TextBox("Email", null) %>
<%= Html.Password("password", null) %>
<%= Html.Password("confirmPassword", null) %>
<input type='submit' />
</form>
Если форма не проходит проверку и отображается повторно, текстовое поле сохраняет свое значение, но поля пароля всегда остаются пустыми.
Почему поля пароля не должны сохранять свои значения? И что более важно, есть ли причина, по которой я не должен игнорировать это поведение?
Я чувствую, что такое поведение снижает удобство использования и предпочел бы, чтобы поля пароля вели себя так же, как поля текстового поля - сохраняя введенное значение при наличии ошибок проверки.
Я использую ASP.NET MVC, но этот вопрос больше касается юзабилити и безопасности. Я понимаю, что то, что я вижу, - это ожидаемое поведение, и, взглянув наPassword(...)
метод показывает мне, что он явно игнорирует значение вModelState
.