


JavaScript melaksanakan penapisan automatik dan mengira nombor telefon bimbit dalam bidang teks bentuk
Dalam senario di mana pengguna mengikat input atau tampal nombor telefon bimbit melalui medan teks, ia sering diperlukan untuk memformat nombor yang dimasukkan, seperti mengekalkan nombor angka tulen dengan nombor tertentu dan mengira bilangan nombor yang sah dalam masa nyata. Ini bukan sahaja meningkatkan pengalaman pengguna, tetapi juga pada mulanya memastikan ketepatan data. Artikel ini akan memberikan penyelesaian berdasarkan HTML dan JavaScript untuk merealisasikan penapisan automatik dan menghitung nombor telefon bimbit dalam medan teks.
1. Pembinaan Struktur HTML
Pertama, kita memerlukan struktur borang HTML yang mengandungi medan teks dan kotak input yang memaparkan nombor nombor.
Dalam struktur ini:
- Mobileno adalah medan teks yang digunakan untuk memasukkan nombor telefon bimbit.
- NumberCount adalah kotak input baca sahaja yang memaparkan bilangan nombor telefon bimbit yang sah.
2. JavaScript melaksanakan nombor penapisan dan pengiraan
Logik teras terletak pada JavaScript. Kami akan mendengar peristiwa input dalam medan teks, dan melakukan penapisan dan pengiraan operasi dengan segera apabila pengguna memasuki atau memasangkan kandungan.
<script> document.addeventListener ('domContentLoaded', function () { const mobilenumberStextArea = document.QuerySelector ('#mobileno'); const numberCountInput = document.QuerySelector ('#numberCount'); /** * Proses Kandungan Medan Teks, Tapis 10 Nombor Numerik Tulen dan Kemas kini Kira*/ Fungsi ProcessMobileNumbers () { Biarkan RawInput = MobileNumberStextArea.Value; // Split by line dan menapis garis kosong biarkan garis = rawInput.split ('\ n'). Map (line => line.trim ()). Penapis (line => line! == ''); biarkan validNumbers = []; const tendigitnumberregex = /^\ d {10} $ /; // Padankan baris nombor 10 digit yang tepat.Foreach (num => { jika (tendigitnumberRegex.test (num)) { validNumbers.push (num); } }); // Keluarkan nombor pendua yang sah (pilihan, tetapi disyorkan) const uniquevalidNumbers = [... set baru (validNumbers)]; // Kemas kini Kandungan Medan Teks, hanya nombor yang sah dikekalkan, satu mobileNumberStextArea.Value = uniquevalidnumbers.join ('\ n'); // Kemas kini nombor kiraan NumberCountInput.Value = uniquevalidnumbers.length; } // Dengar peristiwa input untuk merealisasikan pemprosesan masa nyata // Acara input akan mencetuskan mobilenumberStextarea.addeventListener ('input', ProcessMobilenumbers); // Jalankan sekali apabila halaman dimuatkan untuk memproses kandungan awal (jika medan teks mempunyai nilai pratetap) ProcessMobilenumbers (); }); </script>
3. Penjelasan terperinci mengenai logik teras
- Pengambilalihan Elemen DOM : Pertama, rujukan DOM ke medan teks (#Mobileno) dan Kotak Input Count (#NumberCount) diperoleh melalui Document.QuerySelector.
- ProcessMobileNumbers Fungsi : Ini adalah fungsi pemprosesan teras, yang bertanggungjawab untuk tugas -tugas berikut:
- Dapatkan Input Asal : MobilenumberStextArea.Value Dapatkan kandungan semasa medan teks.
- Split and Clean by Line : RawInput.Split ('\ n') memecah kandungan ke dalam array dengan rehat garis. peta (line => line.trim ()) menghilangkan ruang permulaan dan akhir pada setiap baris. penapis (line => line! == '') Mengeluarkan garis kosong yang diproses.
- Pengesahan Ekspresi Biasa : Const TendigitNumberRegex = /^\ d {10} $ /; mentakrifkan ungkapan biasa.
- ^ Padankan permulaan rentetan.
- \ D Padankan mana-mana nombor (0-9).
- {10} Tepat sepadan dengan elemen sebelumnya 10 kali.
- $ sepadan dengan akhir rentetan. Ekspresi biasa ini memastikan bahawa nombor mestilah dan hanya 10 digit dan tidak mengandungi watak lain (seperti ruang, ditambah tanda, dll.).
- Penapis Nombor yang sah : Traverse setiap baris dan gunakan TendigitNumberRegex.test (NUM) untuk memeriksa sama ada baris memenuhi format 10 digit. Nombor yang memenuhi kriteria ditambah kepada array ValidNumbers.
- Pemprosesan Deduplication (disyorkan) : [... set baru (ValidNumbers)] adalah sintaks JavaScript ringkas untuk membuat array baru yang mengandungi semua elemen bukan duplikasi dalam array ValidNumbers. Ini boleh mengelakkan tuduhan berulang apabila pengguna memaparkan nombor pendua.
- Kemas kini Medan Teks : MobileNumberStextArea.Value = uniquevalidnumbers.join ('\ n'); Sambungkan nombor yang sah selepas penapisan dan deduplikasi dengan rehat garis, dan tetapkan semula medan teks, dengan itu secara automatik membersihkan nombor yang tidak sesuai dengan format.
- Kiraan kemas kini : numberCountInput.Value = uniquevalidnumbers.length; Kemas kini panjang array nombor yang sah ke kotak input Count.
- Mendengarkan acara : MobileNumberStextArea.AddeventListener ('Input', ProcessMobilenumbers); Mengikat fungsi ProcessMobilenumbers ke acara input dalam medan teks. Ini bermakna apabila kandungan medan teks berubah (sama ada pengguna menaip, memadam, atau menampal), fungsi itu dilaksanakan dengan segera, membolehkan maklum balas masa nyata.
- Pemprosesan Inisialisasi : ProcessMobilenumbers (); Melaksanakan sekali sejurus selepas halaman dimuatkan, sekiranya medan teks mempunyai nilai preset dalam HTML, memastikan pengiraan dan pembersihan keadaan awal yang betul.
4. Langkah berjaga -jaga dan pengoptimuman
- Pemilihan Acara :
- Acara input adalah pilihan terbaik untuk mengendalikan perubahan dalam kandungan domain teks. Ia meliputi pelbagai cara untuk menukar kandungan seperti input pengguna, tampal, memotong, menyeret dan menjatuhkan, dan menyediakan pengalaman pengguna masa nyata.
- Acara Keyup hanya dicetuskan apabila kunci dikeluarkan dan operasi bukan papan kekunci seperti penampakan tidak dapat ditangkap.
- Acara Mouseout (seperti yang ditunjukkan dalam jawapan asal kepada soalan) dicetuskan apabila tetikus dipindahkan dari elemen, yang boleh membawa kepada pengalaman pengguna yang lemah kerana pengguna perlu memindahkan tetikus dari medan teks untuk melihat hasilnya dan tidak disyorkan.
- Acara tampal boleh dikendalikan secara khusus untuk operasi tampal, tetapi biasanya peristiwa input mencukupi.
- Ungkapan biasa : ^\ d {10} $ adalah perlawanan numerik tulen 10-bit yang sangat tepat. Jika anda perlu menyokong kod domain antarabangsa atau format nombor telefon bimbit yang lebih kompleks, anda perlu menyesuaikan ungkapan biasa. Sebagai contoh, jika anda membenarkan untuk memulakan dengan nombor, diikuti dengan nombor, anda memerlukan peraturan yang lebih kompleks.
- Pengalaman Pengguna : Pembersihan dan pengiraan masa nyata dapat meningkatkan pengalaman pengguna dengan ketara. Pengguna boleh melihat nombor mana yang sah dan yang telah dikeluarkan.
- Pengesahan sisi pelayan : Walaupun pengesahan front-end menyediakan pengalaman pengguna yang baik, pastikan anda mengesahkan lagi di sisi pelayan . Pengesahan front-end mudah dilangkau, dan pengesahan sisi pelayan adalah garis pertahanan terakhir untuk keselamatan data dan integriti.
- Petua Ralat : Dalam aplikasi yang lebih kompleks, anda boleh mempertimbangkan memberikan maklum balas visual atau meminta kepada pengguna apabila nombor tidak sah dikeluarkan, menunjukkan nombor mana yang tidak memenuhi keperluan.
Melalui kaedah di atas, kami dapat mengurus dan mengesahkan nombor telefon bimbit yang dimasukkan oleh pengguna dalam medan teks, memastikan ketepatan data, dan meningkatkan pengalaman pengguna secara keseluruhan.
Atas ialah kandungan terperinci JavaScript melaksanakan penapisan automatik dan mengira nombor telefon bimbit dalam bidang teks bentuk. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Alat AI Hot

Undress AI Tool
Gambar buka pakaian secara percuma

Undresser.AI Undress
Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover
Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Clothoff.io
Penyingkiran pakaian AI

Video Face Swap
Tukar muka dalam mana-mana video dengan mudah menggunakan alat tukar muka AI percuma kami!

Artikel Panas

Alat panas

Notepad++7.3.1
Editor kod yang mudah digunakan dan percuma

SublimeText3 versi Cina
Versi Cina, sangat mudah digunakan

Hantar Studio 13.0.1
Persekitaran pembangunan bersepadu PHP yang berkuasa

Dreamweaver CS6
Alat pembangunan web visual

SublimeText3 versi Mac
Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

Ia adalah elemen peringkat blok, digunakan untuk membahagikan kawasan kandungan blok besar; Ia adalah elemen sebaris, sesuai untuk membungkus segmen kecil teks atau serpihan kandungan. Perbezaan khusus adalah seperti berikut: 1. Secara eksklusif menduduki baris, lebar dan ketinggian, margin dalaman dan luaran boleh ditetapkan, yang sering digunakan dalam struktur susun atur seperti tajuk, sidebars, dan lain -lain; 2. Jangan bungkus garisan, hanya menduduki lebar kandungan, dan digunakan untuk kawalan gaya tempatan seperti perubahan warna, berani, dan lain -lain; 3. Dari segi senario penggunaan, ia sesuai untuk susun atur dan struktur struktur kawasan keseluruhan, dan digunakan untuk pelarasan gaya berskala kecil yang tidak menjejaskan susun atur keseluruhan; 4. Apabila bersarang, ia boleh mengandungi sebarang elemen, dan unsur-unsur peringkat blok tidak boleh bersarang di dalamnya.

Kunci untuk menambah imej dalam HTML adalah menggunakan tag IMG dan menetapkan sifat dengan betul. Pertama, anda mesti menggunakan tag dan tetapkan atribut SRC untuk menentukan laluan imej. Kedua, adalah disyorkan untuk menambah atribut alt untuk menyediakan teks alternatif; Laluan ini boleh menjadi jalan relatif atau jalan mutlak, dan anda perlu memberi perhatian kepada kes, sokongan format dan konfigurasi pelayan; Di samping itu, gaya gambar boleh dikawal melalui CSS untuk meningkatkan respons dan estetika.

Untuk memulakan dengan HTML dengan cepat, anda hanya perlu menguasai beberapa tag asas untuk membina rangka web. 1. Struktur halaman adalah penting, dan, yang merupakan elemen akar, mengandungi maklumat meta, dan merupakan kawasan paparan kandungan. 2. Gunakan tajuk. Semakin tinggi tahap, semakin kecil nombor. Gunakan tag untuk segmen teks untuk mengelakkan melangkau tahap. 3. Pautan menggunakan tag dan sepadan dengan atribut HREF, dan imej menggunakan tag dan mengandungi atribut SRC dan ALT. 4. Senarai ini dibahagikan kepada senarai yang tidak teratur dan senarai yang diperintahkan. Setiap entri diwakili dan mesti bersarang dalam senarai. 5. Pemula tidak perlu memaksa menghafal semua tag. Lebih cekap untuk menulis dan memeriksa mereka semasa anda menulis. Menguasai struktur, teks, pautan, gambar dan senarai untuk membuat laman web asas.

LinkRel = "Preload" adalah teknologi yang mengoptimumkan prestasi pemuatan halaman dan digunakan untuk memuat sumber kritikal terlebih dahulu. Tujuan terasnya adalah untuk mengutamakan pemuatan sumber yang penting untuk rendering skrin utama, seperti fon, CSS/JS utama dan imej skrin utama. Perhatikan apabila menggunakan: 1. Tetapkan atribut dengan betul untuk menentukan jenis sumber; 2. Elakkan penyalahgunaan dan mencegah penggunaan jalur lebar yang berlebihan; 3. Pastikan sumber -sumber itu sebenarnya akan digunakan, jika tidak, ia akan menyebabkan pembaziran permintaan; 4. Tambah atribut Crossorigin kepada sumber-sumber silang domain. Kaedah penulisan yang tidak betul seperti kekurangan atribut akan menyebabkan pramuat tidak sah. Penggunaan rasional boleh meningkatkan kecekapan pemuatan halaman, jika tidak, ia mungkin tidak produktif.

HTML menyediakan tiga jenis senarai untuk menyusun kandungan. 1. Senarai tidak teratur () digunakan untuk penyertaan yang tidak memerlukan pesanan, seperti senarai fungsi atau bahan; 2. Senarai yang diperintahkan () digunakan untuk kandungan berurutan, seperti keterangan langkah, dan menyokong pelbagai format penomboran; 3. Senarai Penerangan (,,) digunakan untuk memasangkan terma dan penerangan, seperti kamus atau spesifikasi produk; Di samping itu, ia juga menyokong senarai bersarang, yang boleh menambah sublists di bawah entri utama untuk menganjurkan maklumat yang kompleks, dengan itu meningkatkan kebolehbacaan dan kebolehcapaian halaman.

Shadowdom adalah teknologi yang digunakan dalam teknologi komponen web untuk membuat subtrees DOM terpencil. 1. Ia membolehkan gunung struktur DOM bebas pada elemen HTML biasa, dengan gaya dan tingkah laku sendiri, dan tidak menjejaskan dokumen utama; 2. Dibuat melalui JavaScript, seperti menggunakan kaedah lampiran dan menetapkan mod untuk dibuka; 3. Apabila digunakan dalam kombinasi dengan HTML, ia mempunyai tiga ciri utama: struktur yang jelas, pengasingan gaya dan unjuran kandungan (slot); 4. Nota termasuk debugging kompleks, kawalan skop gaya, overhead prestasi dan masalah keserasian rangka kerja. Singkatnya, Shadowdom menyediakan keupayaan enkapsulasi asli untuk membina komponen UI yang boleh diguna semula dan tidak mencemarkan.

❌youcannotnesttagsinsideanothertagbecauseit'sinvalidhtml; browsersautomomatikclosethefirstbeforeopeningthenext, drectinginseparateParagraphs.instead, useinlineelements,

ThehtmldownloadattributeAllowsusStodownloadfilesdirectlyfromalinkbyusingthetag.toimplementit, adddownloadtotheanchortag, seperti asdownloadpdf, orspecifyacustomfilenamelikedownloadasmy-document.pdf.1.itworksbestwithsame-originurlsandCommonfileTypesLikePdf
