Ваш браузер не должен запоминать номер вашей кредитной карты по умолчанию - я могу только предположить, что вы ввели поле, в котором было указано «универсальное» значение autocomplete
.Вы всегда можете заставить свой браузер забыть эту информацию, просто нажав Удалить при выборе (с помощью клавиш со стрелками) в раскрывающемся списке параметров предварительной заливки.
Что касается предотвращения его появления в определенных полях, это зависит от того, какую информацию вы хотите хранить в каждом поле, но есть широкий массив из autocomplete
значений, которые вы можете использовать.Вы можете использовать number
для идентификаторов, а два других упомянутых вами поля на самом деле содержат специализированные значения autocomplete
, given-name
и family-name
:
<input name="reg_id" autocomplete="number" />
<input name="emergency_first_name" autocomplete="given-name" />
<input name="emergency_last_name" autocomplete="family-name" />
Если number
просто не обрежет его, вы также можете использовать регулярное выражение JavaScript для дальнейшего ограничения ввода:
const regex = new RegExp("^[a-zA-Z]+$");
const form = document.getElementsByTagName('form')[0];
const reg_id = document.getElementsByTagName('input')[0];
form.addEventListener('click', function(e) {
e.preventDefault();
if (regex.test(reg_id)) {
this.submit();
}
});
<form>
<input name="reg_id" autocomplete="number" />
<input name="emergency_first_name" autocomplete="given-name" />
<input name="emergency_last_name" autocomplete="family-name" />
</form>