Formulir & Masukan

PinInput (Kode OTP)

Kolom isian kode verifikasi terbagi per kotak yang mematuhi Hukum Miller dan prinsip chunking memori kerja.

PinInput memecah kode verifikasi SMS / WhatsApp menjadi 6 kotak masukan terpisah, memudahkan warga memverifikasi angka tanpa salah ketik (Hukum Miller & Chunking).


Pratinjau Komponen

Masukkan 6 digit kode yang dikirim ke nomor seluler Anda:

Penggunaan CSS Murni

<div class="mjl-pin-input">
  <input type="text" maxlength="1" inputmode="numeric" class="mjl-pin-input__box" autofocus>
  <input type="text" maxlength="1" inputmode="numeric" class="mjl-pin-input__box">
  <input type="text" maxlength="1" inputmode="numeric" class="mjl-pin-input__box">
  <input type="text" maxlength="1" inputmode="numeric" class="mjl-pin-input__box">
  <input type="text" maxlength="1" inputmode="numeric" class="mjl-pin-input__box">
  <input type="text" maxlength="1" inputmode="numeric" class="mjl-pin-input__box">
</div>

Penggunaan di Berbagai Teknologi

Salin contoh sesuai teknologi proyek Anda. Semua versi memakai class dari @majalengka/css. Komponen siap pakai tersedia di @majalengka/vue; untuk React, Angular, Laravel, dan PHP, contoh di bawah sudah berupa pembungkus kecil yang bisa langsung disalin ke proyek.

<div class="mjl-pin-input" role="group" aria-label="Kode OTP dari SMS">
  <input class="mjl-pin-input__box" inputmode="numeric" maxlength="1" autocomplete="one-time-code" aria-label="Karakter 1 dari 6">
  <input class="mjl-pin-input__box" inputmode="numeric" maxlength="1" aria-label="Karakter 2 dari 6">
  <input class="mjl-pin-input__box" inputmode="numeric" maxlength="1" aria-label="Karakter 3 dari 6">
  <input class="mjl-pin-input__box" inputmode="numeric" maxlength="1" aria-label="Karakter 4 dari 6">
  <input class="mjl-pin-input__box" inputmode="numeric" maxlength="1" aria-label="Karakter 5 dari 6">
  <input class="mjl-pin-input__box" inputmode="numeric" maxlength="1" aria-label="Karakter 6 dari 6">
</div>

Mendukung paste kode utuh, Backspace mundur, panah kiri/kanan, serta autocomplete="one-time-code" agar kode SMS bisa diisi otomatis di HP. Pakai mask untuk PIN rahasia.

Untuk HTML, Laravel, dan PHP, perpindahan fokus antarkotak dan pengisian input tersembunyi otp perlu skrip kecil di sisi browser (contoh lengkap ada di versi React/Angular).

Copyright © 2026