Apakah ada cara untuk mencegah ekstensi browser LastPass mengisi formulir berbasis HTML dengan bidang masukan dengan nama "nama pengguna"?
Ini adalah bidang tersembunyi, jadi saya tidak ingin perangkat lunak apa pun menggunakan bidang ini untuk tujuannya:
<input type="text" name="username" id="checkusername" maxlength="9" value="1999" class="longinput" style="display:none">
Solusinya tidak boleh seperti "ganti nama kolom masukan".
type="hidden"
daripada menyembunyikannya dengan CSS$(':input').attr('data-lpignore', true);
Itu saja. Ini akan menonaktifkan pengisian formulir lastpass pada semua formulir.Jawaban:
Menambahkan
ke bidang masukan menonaktifkan kotak LastPass abu-abu [...] untuk saya.
Bersumber dari LastPass.com
sumber
Dua syarat harus dipenuhi:
autocomplete="off"
atributSettings > Advanced > Allow pages to disable autofill
Jadi ini tergantung pada pengguna dan pengembang.
sumber
Apa yang berhasil bagi saya adalah memiliki kata "-search-" di id formulir, seperti
<form id="affiliate-search-form">
- dan lastpass tidak menambahkan elemennya ke input formulir. Ia bekerja dengan sesuatu yang lebih sederhana seperti<form id="search">
tetapi tidak bekerja dengannya<form id="se1rch">
sumber
search
sebagai kelas ke nama pengguna dan kata sandi menonaktifkan tombol asterisk di bidang nama pengguna, tetapi bidang kata sandi tetap apa adanya.Saya tahu saya terlambat ke pesta di sini, tetapi saya menemukan ini ketika saya mencoba menghentikan lastpass dari merusak formulir saya. @takeshin benar karena pelengkapan otomatis tidak cukup. Saya akhirnya melakukan peretasan di bawah ini hanya untuk menyembunyikan simbol. Tidak cantik, tapi saya menyingkirkan ikonnya.
Jika ada pengembang lastpass yang membaca ini, tolong beri kami atribut untuk digunakan, jadi kami tidak perlu menggunakan hal-hal seperti ini.
sumber
background-image
pada bidang input (saya suka meletakkan "jelas tombol "pada kolom masukan) - dalam hal ini yang juga berfungsi untuk saya hanyalah pengaturanbackground-image
danbackground-position
dengan!important
untuk mengganti gaya bawaan lastpass.Saya pikir lastpass menghormati
autocomplete="off"
atribut untuk input, tapi saya tidak yakin 100%.EDIT Seperti yang ditunjukkan orang lain. ini hanya berfungsi jika pengguna telah mengonfigurasi izin terakhir untuk menerima ini.
sumber
autocomplete="off"
di tingkat bentuk. Itu hanya menyia-nyiakan waktu satu jam pengembangan bagi saya pada formulir "edit pengguna" yang tampaknya menampilkan alamat email yang salah. Preferensi lastpass memiliki opsi "jangan timpa bidang yang telah diisi", yang sangat membantu.Bagi saya bekerja baik
type=search
yang agak sama dengantext
atau menggunakanrole=note
.Anda dapat memeriksa LastPass-JavaScript tetapi ini sangat besar, mungkin Anda dapat menemukan beberapa solusi di sana, dari apa yang saya lihat mereka hanya memeriksa 4 jenis input, jadi
input type=search
akan menjadi satu solusi:Juga itu adalah
role
-keyword yang tampaknya mereka abaikan:Saya memeriksa LastPass '
onloadwff.js
, siapkan 26.960 baris kode :)sumber
type=search
satu-satunya hal yang berhasil untuk saya.type=search
adalah satu-satunya cara untuk mencegah isiotomatis terlepas dari status setelan "Respect autocomplete = off" LastPass.role="note"
atautype="search"
. Tidak ada yang berfungsi di Chrome terbaru dan lastpass terbaru.lpignore
bekerja lagi,https://jsfiddle.net/78z0L1sa/3/
Tambahkan "penelusuran" ke id masukan
sumber
Agak terlambat ke pesta tetapi saya baru saja mencapai ini dengan memodifikasi formulir dengan:
Saya kira orang bodoh ini terus berpikir bahwa ini adalah formulir pencarian. Namun ini tidak berfungsi untuk bidang kata sandi! Lastpass mengabaikan bidang nama dalam kasus ini.
Satu-satunya cara saya berhasil melakukan ini adalah dengan menambahkan yang berikut ini langsung di bagian atas formulir:
Ini menyebabkan pergantian tampilan yang buruk tetapi menghapus isi otomatis yang tidak masuk akal - meskipun widget "buat sandi" masih ditampilkan. LastPass menunggu hingga domready dan kemudian memeriksa untuk melihat apakah ada bidang kata sandi yang terlihat, jadi tidak mungkin untuk menyembunyikan atau mengecilkan bidang tiruan di atas.
sumber
Untuk rilis buggy Lastpass Oktober 2019 terbaru ini, perbaikan sederhana ini tampaknya yang terbaik.
Menambahkan
type="search"
untuk masukan Anda.
Rutin lastpass memeriksa
type
atribut untuk menentukan apa yang harus dilakukan dengan isiotomatisnya, dan tidak melakukan apa pun pada html5type
"pencarian" ini. Tentu ini sedikit hacky, tetapi ini adalah perubahan satu baris yang dapat dengan mudah dihapus ketika mereka memperbaiki skrip buggy mereka.Catatan: Setelah melakukan ini, masukan Anda mungkin tampak memiliki gaya yang berbeda oleh beberapa browser jika mereka mengambil
type
atributnya. Jika Anda mengamati hal ini, Anda dapat mencegahnya terjadi dengan menyetel properti CSS khusus browser-webkit-appearance
dan-moz-appearance
ke'none'
input Anda.sumber
Kode gaya ES6 ini sangat membantu saya karena menambahkan data-lpignore ke semua kontrol input saya:
Untuk mengakses kontrol INPUT tertentu, seseorang dapat menulis sesuatu seperti ini:
Atau, Anda dapat melakukannya dengan nama kelas:
sumber
Tak satu pun dari opsi di sini (pelengkapan otomatis, data-lpignore, dll.) Yang mencegah LastPass mengisi otomatis bidang formulir saya. Saya mengambil pendekatan yang lebih palu palu untuk masalah dan
name
sebagai gantinya mengatur atribut input secara asinkron melalui JavaScript. Fungsi dependen-jQuery berikut (dipanggil dari event handler onsubmit formulir) melakukan triknya:Dalam formulir, saya hanya menggunakan
tmp-name
atribut sebagai penggantiname
atribut yang setara . Contoh:Perbarui 2019-03-20
Saya masih mengalami kesulitan dengan hal di atas karena AngularJS tergantung pada kolom formulir yang memiliki
name
atribut agar ngMessages menampilkan pesan kesalahan validasi kolom dengan benar.Pada akhirnya, satu-satunya solusi yang dapat saya temukan untuk mencegah LastPass mengisi bidang kata sandi pada formulir Perubahan Kata Sandi saya adalah dengan:
input[type=password]
seluruhnya, DANKarena saya harus dapat mengirimkan formulir secara normal dalam kasus saya, saya masih menggunakan solusi asli saya untuk memperbarui nama bidang 'tepat waktu'. Untuk menghindari penggunaan kolom masukan kata sandi, saya menemukan solusi ini bekerja dengan sangat baik.
sumber
Mencoba -telusuri ganti nama tetapi untuk beberapa alasan itu tidak berhasil. Apa yang berhasil bagi saya adalah sebagai berikut:
Telah dicoba dan diuji di versi terbaru FF dan Chrome.
sumber
Inilah yang berhasil bagi saya untuk mencegah lastpass mengisi kotak pisau cukur @ Html.EditorFor di Chrome:
Klik ikon LastPass aktif di bilah alat Anda, lalu buka Opsi Akun> Preferensi Ekstensi.
Di layar ini centang "Jangan timpa kolom yang sudah diisi" (di bagian bawah)
Selanjutnya, klik "lanjutan" di sebelah kiri.
Pada layar ini centang "Respect AutoComplete = off: izinkan situs web menonaktifkan IsiOtomatis".
Saya tidak perlu melakukan sesuatu yang khusus dalam bentuk cshtml ASP saya tetapi saya memiliki nilai default dalam formulir untuk kotak @ Html.EditorFor.
Saya harap ini membantu dan berhasil untuk seseorang. Saya tidak dapat menemukan bantuan khusus Razor tentang masalah ini di web jadi saya pikir saya akan menambahkan ini karena saya mengetahuinya dengan bantuan tautan dan kontribusi di atas.
sumber