<span style = "Font-Family: Arial, Helvetica, Sans-Serif; Latar Belakang: RGB (255, 255, 255);"> Kemarin, pencarian proyek melaporkan kesalahan. Rasa sakit itu dari perpustakaan produksi. Saya melihat log karena pengguna memasukkan karakter khusus saat mencari. Tidak ada cara untuk mendapatkan cara tercepat untuk secara langsung memfilter data yang dimasukkan oleh pengguna dan menghapus karakter khusus </span>
Beberapa karakter khusus diteruskan ke latar belakang dan akan menghasilkan kesalahan. Ini dapat disuntikkan ke SQL, sehingga pada dasarnya dicegat.
Mari kita bahas cara input melarang input memasuki karakter khusus:
Metode 1: Setelah mendapatkan nilai nilai, prosesnya sebelum Anda melewatinya
function stripscript (value) {var pola = regexp baru ("[` ~!@#$^&*() = | {} ':;', // [//]. <>/? ~!@#¥ ... &*() {{} {i for. rs+s.substr (i, 1) .replace (pola, '');Sebut saja fungsi ini secara langsung.
Metode 2: Cara yang paling mendasar adalah dengan meminta pengguna untuk tidak dapat memasukkan karakter khusus
function showkeypress (evt) {evt = (evt)? evt: window.eventReturn checkSpecificKey (evt.keycode);} function checkspecifickey (keycode) {var specialKey = "[` ~!#$^&*() = | {} ':;', // [//]. <>/?#!#¥ ¥ ... &*() {【】 【】 【】 【】 ~? RealKey = String.FromCharCode (KeyCode); var flg = false; flg = (specialKey.indexof (realkey)> = 0); if (flg) {// alert ('Tolong jangan masukkan karakter khusus:' + realKey); return false;} return true;} document.onkeypress = showkeypress;Gunakan: Menambahkan peristiwa pada kontrol input tidak merespons sama sekali
Tampaknya menjadi sedikit masalah. Tidak ada tanggapan di negara bagian Cina. Saya tidak tahu apa yang sedang terjadi, jadi saya menemukan yang lain.
Metode 3: Setelah mendapatkan acara OnKeyup, itu cocok dengan metode ini.
Fungsi validatevalue (TextBox) {var ilegalString = "[` ~!#$^&*() = | {} ':;', // [//]. <>/? ~!#¥ ... &*() {{} 【】 ';: " textbox.value.charat (index); if (ilegalString.indexof (s)> = 0) {s = textboxValue.substring (0, index); textbox.value = s;}}Gunakan: Onkeyup = "ValidateValue (ini)" akan hilang segera setelah masuk. Pengguna dapat melihat bahwa apa yang saya masukkan hanya mengatakan bahwa itu akan hilang setelah masuk. Kerugiannya adalah bahwa input kontinu tidak akan hilang (tahan)
Cara paling mengagumkan berikutnya untuk menetralkan hal di atas
Metode 4: Gunakan langsung pada kontrol
// <input/[/w]/g, '') "/[^/d]/g, ''))"> // Kotak input kontrol hanya dapat memasukkan teks atau angka, dan karakter khusus tidak diizinkan untuk memasukkan karakter berikut di sini: (seperti!@#$%^&*, dll.
Metode ini pengguna dapat melihat bahwa input akan segera hilang. Hal yang sama berlaku untuk metode tiga, tetapi input kontinu valid.
Mari kita lihat JS berikut untuk menentukan bahwa karakter yang dimasukkan tidak dapat menjadi karakter khusus:
1. Acara Document.onkeypress adalah verifikasi saat memasuki karakter. Showkeypress korespondensi dieksekusi selama verifikasi. Saat mengembalikan true, itu dapat dimasukkan, dan false tidak dapat dimasukkan.
2. EVT = (EVT)? EVT: Window.event, menekan keyboard akan menghasilkan acara ini untuk mendapatkan nilai yang Anda ketik (itu adalah kode kunci keyboard).
var realkey = string.fromCharCode (keycode);
Metode String.FromCharCode () adalah mengonversi nilai keyboard (keycode) menjadi nilai yang sebenarnya Anda input.
3. Metode SpecialKey.indexof (RealKey):
.indexOf () adalah metode string. Metode indexOf () dari string mencari apakah string yang dilewati sebagai parameter muncul pada string. Jika suatu string ditemukan, ia mengembalikan posisi awal karakter (0 berarti karakter pertama, 1 berarti karakter kedua dan seterusnya). Jika tidak ditemukan, ia kembali -1
4. Var SpecialKey = "#$%/^*/'/"/+";
Berikut adalah string dengan karakter Escape, #, $, %, ^, *, ', ", + adalah simbol khusus, dan yang dengan / sebelumnya perlu diloloskan.
Jika Anda ingin menambahkan simbol khusus input terbatas di kotak teks, gunakan <input type = "text" id = "name" onkeypress = "showkeypress ()">
Di atas adalah empat cara untuk mengimplementasikan input yang melarang input memasuki karakter khusus. Saya harap ini akan membantu Anda. Jika Anda memiliki pertanyaan, silakan tinggalkan saya pesan dan editor akan membalas Anda tepat waktu. Terima kasih banyak atas dukungan Anda ke situs web Wulin.com!