it-swarm.asia

Haruskah tombol 'Lanjutkan' dinonaktifkan jika validasi tidak lengkap?

Dalam formulir kita sering melihat tombol 'lanjutkan' tidak aktif sampai semua bidang yang diperlukan selesai:

mockup

nduh sumber bmml - Wireframes dibuat dengan Balsamiq Mockups

Apakah ini sebenarnya membantu pengguna, atau penghalang?

Saya membayangkan Pro untuk ini adalah indikator visual untuk pengguna yang belum selesai mengisi formulir atau berurusan dengan kesalahan (karena meskipun dengan validasi sebaris, pengguna tidak akan diberi tahu jika mereka tidak pernah benar-benar berinteraksi dengan sebuah kolom jadi tidak akan menampilkan kesalahan apa pun bagi mereka yang ada di titik itu).

Tapi kemudian Con utama untuk ini (yang saya juga lihat dalam pengujian kegunaan) adalah bahwa pengguna akan bingung mengapa mereka tidak bisa mengklik tombol.

Apakah pola menonaktifkan tombol Lanjutkan sampai validasi benar-benar memberikan pengalaman pengguna yang negatif?

99
JonW

Jenis informasi yang diambil dan jumlah bidang yang diperlukan

Itu benar-benar tergantung pada jenis dan cakupan informasi yang Anda minta dan jumlah bidang yang perlu diisi:

Saya telah menguji dan menggunakan pola ini dengan sukses dalam proses masuk dan pembuatan kata sandi. Saya pikir karena antarmuka sangat sederhana dan jumlah bidang yang diperlukan terbatas, tidak ada ambiguitas berkaitan dengan informasi yang diperlukan untuk mengaktifkan tombol terus.

(Menurut saya) pengguna umumnya berfokus pada tugas, jadi memulai tugas terlebih dahulu sebelum mereka menyelesaikan tugas dengan berkomitmen untuk bertindak.

Sebagai contoh, perhatikan kasus halaman buat kata sandi dengan persyaratan kata sandi spesifik (situasi yang telah saya rancang untuk). Dalam kasus khusus ini saya telah menonaktifkan tombol continue sampai semua aturan untuk kata sandi terpenuhi, peringatannya adalah bahwa pengguna perlu mendapatkan umpan balik visual ketika mereka mengetik kata sandi baru mereka dan melihat input mereka memenuhi semua persyaratan kata sandi.

Sistem harus selalu memberi informasi kepada pengguna tentang apa yang terjadi, melalui umpan balik yang sesuai dalam waktu yang wajar.

sumber: 10 Heuristik Kegunaan untuk Desain Antarmuka Pengguna

Di bawah ini adalah contoh yang sangat baik dari pendekatan ini yang juga menggabungkan logika gamification dan Anda dapat menguji hal yang sebenarnya di sini bersama variasi lainnya:

enter image description here


Pencegahan kesalahan

Sebagai aturan umum saya mencoba menghindari (jika mungkin) pesan kesalahan yang menambah frustrasi pengguna dan mengikis kepercayaan mereka. Jadi, alih-alih menampilkan pesan kesalahan dengan menjaga tombol terus aktif saya akan berusaha untuk secara aktif menyampaikan petunjuk dan informasi tentang bidang yang diperlukan kapan dan di mana mungkin.

Bahkan lebih baik daripada pesan kesalahan yang baik adalah desain yang hati-hati yang mencegah masalah terjadi di tempat pertama. Baik menghilangkan kondisi rawan kesalahan atau memeriksa mereka dan memberikan opsi konfirmasi kepada pengguna sebelum mereka melakukan tindakan.

sumber: 10 Heuristik Kegunaan untuk Desain Antarmuka Pengguna


Validasi sebaris: memberikan pesan kesalahan dalam konteks

Di bawah ini adalah lain contoh bagus dari formulir sederhana dengan tombol dinonaktifkan, Fields divalidasi sebaris dan tombol dinonaktifkan "getar" untuk menunjukkan ketidaklengkapan bentuk. Juga, sehubungan dengan poin Anda:

Bahkan dengan validasi sebaris, pengguna tidak akan diberi tahu jika mereka tidak pernah benar-benar berinteraksi dengan suatu bidang sehingga tidak akan menunjukkan kesalahan apa pun bagi orang-orang pada saat itu

Interaksi apa pun dengan formulir diterjemahkan menjadi kemajuan (centang) atau (pesan kesalahan sebaris). Satu-satunya kasus di mana ini tidak akan berfungsi adalah ketika pengguna mengklik "mendaftar" tanpa memberikan informasi yang sangat tidak mungkin/perilaku tidak rasional dan Anda tidak harus memenuhi itu.

enter image description here

Jika Anda berurusan dengan formulir yang lebih panjang dan lebih kompleks, ada baiknya setiap upaya untuk menyusun formulir Anda dengan memotong informasi diperlukan dalam cara yang bermakna dan memperkenalkan proses bertahap/wizard atau pola serupa jika relevan. Ini akan membantu mengoptimalkan desain Anda dan membuatnya tetap fokus pada pencegahan kesalahan.


Konten pesan kesalahan

Area lain yang perlu Anda pertimbangkan jika "Kirim" atau "tombol Lanjutkan" diaktifkan adalah:

Kesesuaian antara sistem dan dunia nyata

Ini mungkin kasus Edge tetapi nilainya menyebutkan; pertimbangkan bentuk login khas dengan tombol login diaktifkan dan pengguna mengklik login tanpa memberikan rincian, apa pesan kesalahan telp pengguna tanpa melanggar keamanan sistem: Pesan paling sederhana yang saya lihat, baca yang berikut: "Nama pengguna atau kata sandi salah"

Ini adalah ketidaksesuaian yang jelas antara apa yang telah dilakukan pengguna dan apa umpan balik sistem kepadanya. Jadi dalam kasus khusus ini saya akan memilih untuk menonaktifkan tombol masuk sampai bidang yang diperlukan diisi.


Kapan tombol dinonaktifkan dapat digunakan

Tujuan dari tombol yang dinonaktifkan adalah untuk mendahului dan mencegah pesan kesalahan dan mereka dapat mencapai ini secara optimal ketika:

  1. Formulir memiliki jumlah bidang terbatas dan Pengguna dapat melihat secara sekilas bidang mana yang tidak ada.
  2. Ada penekanan visual pada bidang yang diperlukan dan hapus umpan balik ketika setiap bidang diisi (Tujuan yang perlu dipenuhi untuk mengaktifkan tombol)
  3. label lapangan pendek dan dapat dengan mudah dipindai , misalnya nama, nama pengguna, kota/kota, dll yang memperkuat poin pertama.
  4. Semua bidang wajib diisi karena menawarkan jalur yang jelas bagi pengguna untuk mengaktifkan tombol dan berkomitmen untuk bertindak *.

    * Tampak bagi saya bahwa ketika ada bidang opsional, pengguna mungkin salah menafsirkan apa yang sebenarnya diperlukan untuk mengaktifkan tombol meskipun saya tidak memiliki bukti untuk mendukung ini.


Apakah tombol yang dinonaktifkan itu penghalang?

Ini jelas bukan . A luran tangan yang mewujudkan pepatah lama "Pencegahan Lebih Baik daripada Sembuhkan" tetapi memang datang dengan peringatan dan membutuhkan penimbangan beberapa faktor yang telah saya sebutkan di atas dan mengujinya dengan audiens target Anda untuk memastikan bahwa itu melakukan apa yang dimaksudkan untuk dilakukan.


Merancang Untuk Orang Bukan Mesin

Pesan kesalahan menghukum orang karena tidak berperilaku seperti mesin. Sudah saatnya kita membiarkan orang berperilaku seperti orang lain. Ketika masalah muncul, kita harus menyebutnya kesalahan mesin, bukan kesalahan manusia: mesin itu dirancang salah, menuntut agar kita sesuai dengan persyaratan khusus. Saatnya merancang dan membuat mesin yang sesuai dengan persyaratan kami. Berhentilah berkonfrontasi dengan kami: Berkolaborasi dengan kami.

Sumber: Don Norman: Designing For People

Saya kira poin yang saya coba sampaikan adalah bahwa "pengguna" adalah orang-orang seperti kita semua dan kita tidak boleh meremehkan kecerdasan mereka dan memperlakukan mereka dengan rendah hati:

  • Mereka akan Membaca & memahami label jika ini adalah jelas, dapat dibaca dan ringkas
  • Mereka akan memeriksa untuk apa yang dibutuhkan dari mereka jika formulir terstruktur dengan baik dan sesuai dengan apa yang ingin mereka capai (berfokus pada tugas)
74
Okavango

Saya harus mengatakan bahwa perilaku ini menghambat pengalaman pengguna.

Jika Anda pernah membaca Don't Make Me Think oleh Steve Krug maka Anda akan segera menyadari bahwa pola ini melanggar aturan yang tercantum dalam judul.

Orang mungkin bertanya, Mengapa ini dinonaktifkan?

Tidak ada manfaatnya membuat pengguna melompati lingkaran ini.

Pada dasarnya apa yang saya maksudkan adalah bahwa pengguna disambut dengan bentuk yang tidak dapat ditindaklanjuti dan melalui penemuan, atau lebih buruk lagi dari membaca, mereka harus mencari cara bagaimana menggunakan formulir yang disajikan kepada mereka dengan benar.

Sebuah solusi untuk ini adalah untuk segera menarik perhatian ke bidang yang diperlukan tetapi itu akan membuat mereka panik ketika mereka bertanya-tanya mengapa mereka disambut dengan banyak kesalahan merah meskipun mereka bahkan belum menyentuh formulir.

Jangan menghentikan pengguna untuk melakukan tugas yang diinginkan dengan menekan tombol Kirim, rasanya senang mengetahui bahwa formulir ini memungkinkan Anda mencoba dengan dampak minimal. Pesan kesalahan yang menyatakan "Harap tinjau kesalahan formulir yang disorot dengan warna merah" sudah cukup.


Pikiran lain:

Saya tidak yakin di situs web atau halaman mana Anda sering melihat ini, tetapi sekilas dari 10 formulir situs web "Hubungi Kami" pertama yang ditemukan di Google tampaknya menentang pengamatan Anda.

Dua sen saya:

Jika saya harus menebak maka menonaktifkan tombol Kirim telah menjadi fitur default dari plugin validasi populer dan "pengembang" hanya membiarkannya apa adanya.

23
MonkeyZeus

kita sering melihat tombol 'lanjutkan' tidak aktif

Saya pikir ini boleh salah. Baca terus!

Untuk apa nilainya, saya memperbarui beberapa penelitian lama pada formulir pendaftaran untuk situs web populer saat ini, dan telah menemukan bahwa persentase yang cukup kecil - sekitar 5% atau kurang - menonaktifkan tombol Kirim (apakah itu final daftar atau a lanjutkan tombol ketik) sampai data dianggap 'valid'.

Setelah mempelajari begitu banyak formulir, itu menjadi perilaku terlihat daripada tidak terlihat perilaku, ketika tombol kirim dinonaktifkan. Inilah mengapa saya pikir Anda mungkin merasa seperti Anda melihatnya lebih sering daripada yang sebenarnya.

Ada juga masalah tambahan dengan tombol yang dinonaktifkan, kecuali jika formulir tersebut melakukan pekerjaan yang luar biasa untuk memvalidasi data saat itu juga tanpa mengganggu pengguna pada saat yang sama, maka itu mencegah pengguna untuk dapat melihat apa yang salah dengan kandungan.

Satu situs yang melakukan hal ini dapat diterima adalah untuk ID BBC

enter image description here

Namun, mereka membuatnya sangat jelas on-the-fly apa yang valid dan apa yang tidak.

enter image description here

Contoh penting lain dari formulir pendaftaran yang menonaktifkan tombol adalah MailChimp, but mereka hanya menonaktifkannya sampai kata sandi dapat diterima - bukan seluruh bentuk - jadi Anda bisa memasukkan kata sandi dan mengaktifkan tombol - tanpa ada data valid lainnya di formulir.

Mereka dengan jelas melihat kata sandi sebagai sesuatu yang mutlak harus benar sebelum Anda dapat mempertimbangkan untuk mengirimkan formulir. Sisa data diizinkan untuk divalidasi saat diserahkan. Mereka tidak menonaktifkan tombol kirim untuk masuk.

Menurut saya, formulir pendaftaran Mailchimp sangat bagus dalam banyak hal.

enter image description here

GoDaddy adalah contoh ketiga situs yang menonaktifkan tombol kirim. Namun, di sini mereka tidak menonaktifkan tombol sampai semua data valid - kolom harus kosong - sehingga satu huruf di setiap bidang akan dilakukan.

Di sini tombol yang dinonaktifkan membantu pengguna mengenali tidak terjawab bidang daripada tidak valid bidang.

enter image description here

Jadi dalam ringkasan:

Jika Anda benar-benar ingin menonaktifkan tombol sampai semua data sebenarnya valid lalu formulir harus sangat pendek dan divalidasi dengan sangat baik dengan cepat. Bentuk yang panjang akan terlalu tidak jelas tentang apa yang salah, dan tingkat validasi yang dibutuhkan akan terlalu mengganggu untuk semua bidang.

Melakukan hal itu akan menempatkan Anda dalam minoritas kecil, terutama untuk validasi penuh - apa pun perasaan yang Anda 'sering' lihat :)

15
Roger Attrill

Seseorang seharusnya tidak menonaktifkan tombol

Pertimbangkan situasi dari sudut pandang pengguna. Bagilah pengguna menjadi dua kelompok

  • Mereka yang saat ini tidak percaya bahwa mereka dapat melanjutkan, jadi tidak mencari cara untuk melanjutkan
  • Mereka yang percaya bahwa mereka siap untuk melanjutkan, dan sedang mencari cara untuk melakukannya.

Untuk mantan grup, menonaktifkan tombol "lanjutkan" hanyalah artefak visual yang terlihat di sudut penglihatan seseorang. Ini membantu, tetapi tidak lebih membantu daripada grafik lain yang menggambarkan keadaan formulir. Bagi orang-orang ini, perubahan grafik (seperti panah yang mengarah ke tombol melanjutkan, atau tombol lanjut yang disorot) sama berartinya dengan tombol yang beralih dari abu-abu ke hitam.

Untuk kelompok yang terakhir, mereka percaya formulir sudah selesai. Tombol yang dinonaktifkan membuat mereka tahu bahwa mereka salah, tetapi tidak membantu mereka mengidentifikasi apa yang salah. Mereka sekarang harus memindai seluruh formulir yang menurut mereka diisi dengan benar untuk notasi apa pun yang mereka lewatkan yang mengindikasikan bagian yang tidak lengkap. Ini kehilangan kesempatan untuk berinteraksi dengan pengguna. Interaksi itu dapat membantu mereka menemukan bagian-bagian dari formulir yang tidak diisi penuh. Ketinggalan interaksi ini mengubah formulir menjadi teka-teki: "webadmin tahu Anda melakukan kesalahan, tetapi Anda harus menemukannya."

Mengingat bahwa ada cara lain untuk menangani petunjuk grafis bahwa formulir sudah lengkap (saya suka tombol yang disorot sendiri), dan tombol terus memberikan cara bagi pengguna untuk meminta bantuan, saya tidak melihat alasan untuk pernah menonaktifkan tombol.

12
Cort Ammon

Ini adalah gambar jawaban meta dari beragam pendapat yang dikemukakan.

Jika Anda ingin menonaktifkan tombol, Anda masih harus memeriksa klik dan memberikan alasan mengapa itu dinonaktifkan. Ini memiliki dua keuntungan: lebih sedikit kesalahan yang ditampilkan, dan jika Anda karena suatu alasan sebelumnya tidak mengomunikasikan mengapa formulir tidak dapat dikirimkan, Anda dapat melakukannya secara eksplisit.

5
hildred

Tombol dimaksudkan untuk diklik. Jika pengguna melihat tombol, ia ingin mengklik. Tombol Nonaktif menjadi aktif hanya ketika semua data diisi dalam formulir tertentu bukan pengalaman yang baik. Saya lebih suka memberi tahu pengguna (yang saya lakukan dengan formulir yang saya desain) tepat di awal bahwa semua bidang wajib dan Anda tidak dapat mendaftar jika salah satu bidang ini dibiarkan kosong. Formulir Anda bukan game di mana pengguna harus menyelesaikan level yang ia mainkan untuk membuka kunci game lain. Hanya pemikiran saja :)

4
Guru Munishwar

Ya tombol " Lanjutkan " harus dinonaktifkan sampai semua wajib bidang diisi pada paling sedikit beberapa teks (ini mengasumsikan bahwa bidang yang diperlukan ditetapkan untuk pengguna dengan cara tertentu). Yang terjangkau di sini adalah sistem bahkan tidak dapat mencoba untuk melanjutkan sampai memiliki input yang diperlukan dari pengguna.

Setelah bidang yang diperlukan telah diisi, tombol " Lanjutkan " harus segera diaktifkan yang menunjukkan bahwa sistem memiliki apa yang diperlukannya mencoba untuk melanjutkan.

Dari sana, mengklik tombol " Lanjutkan " akan menjalankan validasi penuh dan dapat mengembalikan pesan validasi kepada pengguna.

1
landonz

Tombol 'Lanjutkan' Formulir harus dinonaktifkan sampai semua wajib bidang telah diisi dan telah melewati validasi.

Mengapa? Yah itu masuk akal, sungguh:

Bayangkan Anda seorang Bank. Dan Anda memiliki pengaturan bentuk sederhana yang memungkinkan transfer uang dari satu pihak ke pihak lain. Anda memiliki 'Dari akun mana Anda ingin mentransfer uang?' bidang, bidang 'Penerima' dan bidang 'Jumlah untuk dikirim'.

Jika salah satu dari bidang itu tidak diisi, transfer tidak dapat dilakukan. Oleh karena itu, ketiga bidang wajib diisi. Tanpa informasi dari semua bidang yang diperlukan, transfer ini tidak dapat dilakukan.

Sekarang, apa yang terjadi jika kita membuat ketiga bidang wajib, dan menunjukkan ini kepada pengguna, dan pengguna memang memasukkan informasi di semua bidang yang diperlukan, tetapi mereka membuat kesalahan di bidang 'Jumlah untuk mengirim'?

Anggap saja pengguna memasukkan 0,00.

Kami tidak dapat mengirim $ 0,00. Jika backend tidak diatur dengan benar untuk menangani kasus seperti mengirim nol dolar, apa yang bisa terjadi? Ketika pengguna mengklik 'Lanjutkan', ini tidak hanya menyebabkan Anda kehilangan bandwidth dan waktu, tetapi juga menyebabkan pengguna Anda kehilangan bandwidth dan waktu. Dan dalam Bisnis, waktu sama dengan uang, dan jika banyak orang terus-menerus membuat kesalahan, atau tidak memasukkan detail ketika seharusnya, Anda akan secara efektif menciptakan terlalu banyak overhead untuk diri sendiri (memungkinkan terlalu banyak sumber daya untuk digunakan) dan saya bertaruh bahwa ini pada akhirnya akan menyebabkan data tidak cocok di beberapa titik.

Juga, sebagai pengguna, tidak memvalidasi formulir dan mengizinkan saya untuk melanjutkan tanpa memberi tahu saya bahwa ada sesuatu yang salah sangat mengganggu. Terutama ketika halaman diperbarui dan memaksa saya untuk mengisi semuanya untuk kedua kalinya.

1
Jase

Saya percaya ada jalan tengah. Tombol yang dinonaktifkan secara visual tidak harus berarti mengkliknya tidak "apa-apa" seperti yang disarankan. Itu secara logis akan mencegah pengguna dari memajukan tanpa adanya apa pun yang diperlukan untuk mengaktifkan tindakan utama itu, tetapi tidak ada alasan bahwa mengklik itu tidak dapat menyajikan pesan peringatan kepada pengguna yang menjelaskan mengapa itu dinonaktifkan dan bagaimana mengaktifkannya.

1
Bryan

Saat merancang beberapa halaman web, saya datang ke situs ini untuk melihat apa yang orang lain katakan untuk membuat beberapa keputusan. Saya telah menyimpulkan bahwa jawaban terbaik adalah "itu tergantung."

Saya memikirkan pengalaman saya sendiri dengan tombol yang diaktifkan yang tidak melakukan apa pun kecuali memberi tahu saya apa yang saya lakukan salah dan, kadang-kadang pada halaman web yang dirancang dengan buruk, bersihkan semuanya! Saya terutama merasa jengkel ketika berada di formulir yang panjang dan kesalahannya ada di bagian atas halaman ... yang tidak saya lihat sampai mengklik tombol Kirim beberapa kali dan kemudian gulir ke atas untuk melihat masalah. Plus, tidak setiap situs web memperjelas apa yang diperlukan sampai tombol Kirim diklik. Jangan tangkap aku di hari yang buruk dengan situs web yang memberitahuku setelah fakta bahwa aku harus memasukkan sesuatu!

Saya pikir Halaman Web harus benar-benar jelas apa yang diperlukan pada formulir SEBELUM saya menekan tombol sehingga, jika saya menekan tombol Kirim sebelum memasukkan bidang yang diperlukan, saya berpikir, ya, saya tidak percaya saya melewatkan itu, saya tahu itu wajib! Di sisi lain, saya harus setuju dengan Jase bahwa saya tentu tidak ingin tombol Kirim diaktifkan di situs web bank saya sampai saya memasukkan semua bidang yang diperlukan! Saya menggunakan situs web bank saya lebih dari situs lain dan tombol yang dinonaktifkan tidak pernah membuat saya kebingungan.

Jadi kesimpulan saya? Jika Anda memiliki formulir yang luas dengan beberapa bidang, beberapa diperlukan, beberapa opsional, tandai dengan jelas semua bidang yang diperlukan, aktifkan tombol Kirim dan, ketika formulir dikirimkan dengan data yang tidak valid atau tidak ada, sorot bidang masalah dan daftarkan pesan dengan kesalahan. Jika Anda memiliki formulir tempat semua bidang muncul pada halaman yang sama ... bersama dengan tombol Kirim, nonaktifkan tombol dan jelas menunjukkan apa yang perlu dilakukan pengguna untuk mengaktifkan tombol. Tombol Kirim juga dapat diaktifkan; Namun, cara apa pun harus bekerja dengan baik dan memberikan pengalaman pengguna yang baik .... di sinilah letak keindahan desain web ... terserah Anda! Akhirnya, ketahuilah cara mana yang lebih sulit untuk dikodekan karena ini juga dapat membantu Anda membuat keputusan dengan satu cara atau lainnya ketika tampaknya baik-baik saja ... menjaga biaya tetap rendah untuk klien harus selalu menjadi pertimbangan.

Oh ... dan seberapa sering pengguna biasa "menonaktifkan" HTML mereka? Saya berpikir itu tidak umum dan rata-rata pengguna (non-TI) bahkan tidak tahu bagaimana melakukannya jadi saya tidak berpikir itu adalah alasan yang cukup baik untuk dipertimbangkan ketika merancang situs web yang ramah pengguna. Jika pengguna cukup pintar untuk menonaktifkan HTML mereka, maka mereka harus tahu bahwa mereka harus mengaktifkannya agar situs web berfungsi penuh !! Selamat merancang! :)

1
My Two Cents

Saya akan membuat ini singkat dan to the point karena sebagian besar jawaban sudah mencakup banyak bidang yang valid dan baik.

Apakah itu menambah nilai?

Saya tidak dapat memikirkan kasus di mana pengguna akan/harus melihat tombol terus untuk mengetahui apakah dia telah selesai mengisi formulir. Setiap kali pengguna ingin mengklik tombol dia percaya ia telah menyelesaikan formulir dan mengarahkannya ke tindakan yang diperlukan diperlukan pada saat ini. Pada prinsipnya ini seharusnya sudah jelas dalam bentuk yang dirancang dengan baik, tetapi fakta bahwa pengguna percaya dia sudah selesai membuktikan bahwa ini bukan masalahnya, dengan demikian pemfokusan, kedipan sementara atau dengan beberapa cara lain mengarahkan pengguna adalah rencana tindakan yang baik.

Bagaimana dengan validasi yang tidak sinkron?

Satu hal yang belum dibahas adalah bahwa banyak formulir adalah formulir web atau tergantung pada internet dan tidak semua validasi dapat dilakukan secara instan. Untuk memberikan contoh khas formulir pendaftaran dengan nama pengguna: nama pengguna perlu dicari di dalam basis data dan jika nama pengguna sudah digunakan, bidang tersebut akan memerlukan nama pengguna yang berbeda untuk dimasukkan. Biasanya ini adalah tampilan yang sangat cepat, tetapi bagaimana jika pengguna misalnya menggunakan internet seluler dan baru saja kehilangan koneksinya atau memiliki koneksi yang sangat lambat? Dengan tombol lanjutan yang dinonaktifkan, pengguna akan berakhir dengan formulir yang sudah diisi dan tidak ada tombol untuk mengklik yang relatif lebih membingungkan daripada mengklik tombol dan menunggu halaman berikutnya untuk memuat pengguna mana yang menggunakan koneksi internet yang buruk akan digunakan. untuk mengambil sedikit lebih lama.

Tentu saja hal di atas dapat agak dicegah jika bidang yang menunggu validasi dengan sangat jelas menunjukkan ini, tetapi itu biasanya tidak dilakukan dan jika semua bidang dicentang langsung pada sisi server seperti ini semakin umum maka ini mungkin hanya membingungkan pengguna: "Mengapa ada haly berputar di sebelah nama lengkap saya?". Jadi, jika Anda ingin melakukan ini, satu-satunya solusi yang dapat saya pikirkan adalah meletakkan pemintal di tombol kirim yang dinonaktifkan saat validasi sedang berjalan. Satu-satunya bahaya adalah bahwa pengguna mungkin berpikir dia mengirimkan formulir secara tidak sengaja karena tombol yang dinonaktifkan sering dikaitkan dengan keadaan yang diklik/ditekan.

1
David Mulder

Saya pikir itu buruk untuk menonaktifkannya ketika datang ke validasi kendala bentuk HTML asli. Ini menghilangkan semua kegunaan dari validasi formulir sehingga Anda hanya memiliki validasi.

Diambil formulir sederhana ini misalnya, ketika Anda mengisi sesuatu ke bidang a dan tekan enter, tidak ada yang terjadi. Anda tidak mendapatkan umpan balik yang terlihat. Anda tidak tahu apa yang diperlukan dengan hanya melihat UI visual.

<form>
  <input type="text" name="a" required>
  <input type="text" name="b" required>
  <input type="submit" disabled>
</form>

Dimana seolah-olah Anda akan memiliki tombol yang diaktifkan

<form>
  <input type="text" name="a" required value="sometext">
  <input type="text" name="b" required>
  <input type="submit">
</form>

Sekarang jika Anda harus menekan enter setelah memasukkan sesuatu pada bidang a Anda mendapatkan sembulan dan bidang input juga menjadi terfokus

enter image description here


Memiliki validasi formulir terstruktur sempurna tanpa menonaktifkan tombol melanjutkan

  • Anda tidak perlu javascript apa pun
  • Halaman tidak mau dimuat ulang (sehingga menghemat bandwidth)
  • Anda mendapatkan umpan balik terperinci yang baik dalam bahasa Anda sendiri untuk apa yang salah (berbicara angka dengan langkah, min max ditambahkan ke dalamnya - Anda mendapatkan sesuatu seperti: "masukkan nomor yang valid, dua terdekat, angka yang valid adalah x, y")
  • Bidang yang keliru diisi juga menjadi fokus
  • Tidak membuat pengguna bingung mengapa mereka tidak bisa mengkliknya, bahkan sebaliknya Anda tahu apa yang salah dengan formulir
0
Endless