Как выводить из строя автозавершенный в Веб формулярах?

У меня есть формуляр, у которого есть различные поля. Как только он был послан, когда пользователь возвращается в страницу, браузер "помнит" принятую в доме стоимость и автозавершает поля.

Как возможно выводить этот, автозавершенный полей из строя в формуляре? Какое-то решение существует cross-browser, что функционировал в главных браузерах?

2
задан 18.08.2016, 05:25
3 ответа

Изменения на формуляре

Заметь: До некоторого времени браузеры вели себя таким образом, когда добавляли признак, автозавершите = "off” в формуляр, но уже не больше начиная с IE11, Chrome 34 и Firefox 30.

Изменение 1: мы добавляем к формуляру признак autocomplete=”off”. Хотя не существенно делать это, в версиях браузеров предшествующих указанным он созерцается.

В этом примере ты выводишь завершенный автоматический автомобиль из строя во всех полях.

Если ты хочешь дать возможность автомобилю, завершенному в специфическом поле, ты можешь делать это добавляя признак autocomplete="on" в любое поле.

<form action="#" method="post" autocomplete="off">

Email: <input type="text" name="email">

Nombre: <input type="text" name="nombre">

<input type="submit" value="enviar">

</form>

Также возможно применяться к специфическому полю:

<input type="text" name="email" autocomplete="off">

Изменение 2: мы меняем тип неудара в лунку submit из-за button. Это - то, что избегает того, чтобы большинство браузеров предложило помнить.

Изменения на коде javascript

Формульный пример login.

Изменение 3: мы устанавливаем login_button как элемент, который нужно наблюдать, и событие click (вместо submit элемента login_form):

Event.observe( 'login_button', 'click', formProcess);

Изменение 4: мы добавляем в конце функции formProcess действие submit формуляра

$('login_form').submit();

Мы добавляем признак onkeypress в каждом призывая в новую функцию checkEnter, которая, обнаружив, что на него нажали Enter призови функцию обработки формуляра:

Email: <input type="text" name="e" id="email" onkeypress="checkEnter(event)" /><br />
Password: <input type="password" name="p" id="password" onkeypress="checkEnter(event)" /><br />

Полный формуляр примера javascript

javascript

<script type="text/javascript">
  Event.observe(window, 'load', function(){
    Event.observe( 'login_button', 'click', formProcess);
  });
  function formProcess(){
    //agregar validaciones
    $('secret').value = hex_sha512($('password').value);
    $('password').value = '';
    $('login_form').submit();
  }
  function checkEnter(e){
    var codigoCaracter = (e && e.which) ? e.which : event.keyCode;
    if(codigoCaracter == 13) {
      formProcess();
    }
    else {
      return true;
    }
  }
</script>

Формуляр

<form action="index.cgi" autocomplete="off" method="post" id="login_form" name="login_form">
  Email: <input type="text" name="e" id="email" onkeypress="checkEnter(event)" /><br />
  Password: <input type="password" name="p" id="password" onkeypress="checkEnter(event)" /><br />
  <input type="hidden" name="ps" id="secret">
  <input type="button" value="Login" id="login_button" />
</form>

Два примера как выводить из строя автозавершенный в формулярах.

6
ответ дан 24.11.2019, 13:37

Обычно я это делаю со свойством автозавершите в off, в начало формуляра, чтобы не быть должным применять это к каждому из полей того же самого:

<form method="post" action="/enviar" autocomplete="off">

Также возможно применяться к специфическому полю:

<input type="text" autocomplete="off">

Что-то из документации в MDN.

Как caniuse.com функционируй в практически всех современных браузерах.

2
ответ дан 24.11.2019, 13:37
  • 1
    Это, кажется, функционирует, но не во всех браузерах или со всеми формулярами. Какие-то браузеры, кажется, дают предшествование данным, сохраняемым (p.e. logins), чем в autocomplete="off" –  Alvaro Montoro♦ 23.08.2016, 14:42
  • 2
    В cu и # 225; они плывущие у тебя эта проблема есть? –  Shaz 23.08.2016, 20:37
  • 3
    @Shaz может быть в Интернете explorer, потому что все браузеры chrome, он действует, mozilla, safari он это выносит –  simon 27.07.2018, 13:34
  • 4

С признаком autocomplete этикетки form. Который вынесен в большинстве браузеров, наиболее использованных в Интернете.

<form action="#" method="post" autocomplete="off">
    Nombre:<input type="text" name="fname"><br>
    Correo: <input type="email" name="email"><br>
  <input type="submit">
</form> 

Для большей информации относительно этого, клика здесь.

2
ответ дан 24.11.2019, 13:37
  • 1
    Это, кажется, функционирует, но не во всех браузерах или со всеми формулярами. Какие-то браузеры, кажется, дают предшествование данным, сохраняемым (p.e. logins), чем в autocomplete="off" –  Alvaro Montoro♦ 23.08.2016, 14:42