Batas Karakter dalam HTML


Jawaban:


133

Ada 2 solusi utama:

HTML murni:

<input type="text" id="Textbox" name="Textbox" maxlength="10" />

Yang JavaScript (lampirkan ke Acara onKey):

function limitText(limitField, limitNum) {
    if (limitField.value.length > limitNum) {
        limitField.value = limitField.value.substring(0, limitNum);
    } 
}

Tapi bagaimanapun, tidak ada solusi yang baik. Anda tidak dapat beradaptasi dengan implementasi HTML yang buruk dari setiap klien, itu adalah perjuangan yang mustahil untuk menang. Itulah mengapa jauh lebih baik untuk memeriksanya di sisi server, dengan skrip PHP / Python / apa pun.


27
Periksa server sebagai pemeriksaan kewarasan terakhir, tetapi tambahkan peningkatan sisi klien jika Anda bisa melakukannya; itu membuat pengalaman pengguna yang lebih kaya.
Rob

43

ada atribut maxlength

<input type="text" name="textboxname" maxlength="100" />

1
Ini benar, tetapi beberapa klien tidak memeriksa ini. Hal ini terutama berlaku untuk klien berbasis telepon seluler.
Drejc

Ada juga cara untuk menghapusnya. Misalnya, Ekstensi Pengembang Web Firefox memiliki fungsi Hapus panjang Maksimum.
Sam Hasler

Dengan chrome dan kit pengembangnya (yang disertakan dengan browser), sangat mudah untuk menghapus hal-hal seperti itu di html
AntonioCS

12

Selain hal di atas, saya ingin menunjukkan bahwa validasi sisi klien (kode HTML, javascript, dll.) Tidak pernah cukup. Juga periksa panjang sisi server, atau jangan periksa sama sekali (jika tidak begitu penting sehingga orang dapat diizinkan untuk menyiasatinya, maka tidak cukup penting untuk benar-benar menjamin langkah apa pun untuk mencegahnya).

Juga, rekan-rekan, dia (atau dia) mengatakan HTML, bukan XHTML. ;)


saya setuju. seseorang dapat melakukan POST data secara langsung ke situs web menggunakan beberapa alat skrip, jadi dalam hal ini validasi maxlength dan sisi browser lainnya tidak mudah
cruizer

atau gunakan firebug dan hapus atribut maxlength.
Zach


1

Untuk elemen <input> ada atribut maxlength:

<input type="text" id="Textbox" name="Textbox" maxlength="10" />

(Ngomong-ngomong, jenisnya adalah "teks", bukan "kotak teks" seperti yang ditulis orang lain), namun, Anda harus menggunakan javascript dengan <textarei> s. Bagaimanapun panjangnya harus diperiksa di server.


0

Anda dapat mengatur maxlength dengan jquery yang sangat cepat

jQuery(document).ready(function($){ //fire on DOM ready
 setformfieldsize(jQuery('#comment'), 50, 'charsremain')
})
Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.