Domanda

Sto sviluppando un sito web.Sto utilizzando uno stile di app Web a pagina singola, quindi tutte le diverse parti del sito sono AJAX in index.php.Quando un utente accede e dice a Firefox di ricordare il suo nome utente e la sua password, tutte le caselle di input sul sito vengono compilate automaticamente con quel nome utente e quella password.Questo è un problema sul modulo per cambiare una password.Come posso impedire a Firefox di compilare automaticamente questi campi?Ho già provato a dare loro nomi e ID diversi.

Modificare: Qualcuno se lo è già chiesto.Grazie Joel Coohorn.

È stato utile?

Soluzione

Dalla documentazione di Mozilla

<form name="form1" id="form1" method="post" autocomplete="off"
  action="http://www.example.com/form.cgi">
[...]
</form>

http://developer.mozilla.org/en/How_to_Turn_Off_Form_Autocompletion

Altri suggerimenti

IL autocomplete="off" il metodo non funziona per me.Mi sono reso conto che Firefox stava inserendo la password salvata nel primo campo password che incontrava, quindi la soluzione che ha funzionato per me è stata creare un campo password fittizio prima del campo di aggiornamento della password e nasconderlo.Così:

<input type="password" style="display: none;" />
<input type="password" name="password_update" />

Hai provato ad aggiungere l'attributo autocomplete="off" nel tag di input?Non sono sicuro che funzionerà, ma vale la pena provare.

tutte le caselle di input sono impostate su type=password?Sarebbe bastato.Una delle cose che puoi fare, e non sono affatto sicuro che questa sia la risposta migliore, è lasciare la casella di input come tipo di input e usare semplicemente javascript e l'evento onkeydown per posizionare le stelle nella casella di input invece di avere il browser renderlo.Firefox non lo precompilerà.

Per inciso, ho dovuto lavorare su app Web a pagina singola e lo odio assolutamente.Perché vorresti togliere all'utente la possibilità di aggiungere pagine ai segnalibri?Per utilizzare il pulsante Indietro?

In aggiunta a questa risposta https://stackoverflow.com/a/30897967/1333247

Questo nel caso in cui tu abbia anche un campo Utente davanti ai campi della password e desideri disabilitare il completamento automatico anche per questo (ad es.configurazione web del router, impostazione utente proxy e password).

Basta creare un campo utente fittizio davanti al campo password fittizia per nascondere il completamento automatico del nome utente:

<input type="text" style="display: none;" />
<input type="password" style="display: none;" />
<input type="password" name="password_update" />

Secondo il documenti si tratta del completamento automatico del login.Per disabilitare quello normale (es.completamento dei termini di ricerca), basta usare il file

autocomplete="off"

attributo sul modulo o sugli input.Per disabilitarli entrambi sono necessari entrambi, poiché l'attributo non disabiliterà il completamento automatico del login.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top