Pengesahan borang JavaScript
JavaScript boleh digunakan untuk mengesahkan data input ini dalam borang HTML sebelum data dihantar ke pelayan.
Data borang selalunya memerlukan JavaScript untuk mengesahkan ketepatannya:
Sahkan bahawa data borang kosong?
Sahkan bahawa input ialah alamat e-mel yang betul?
Adakah tarikh pengesahan dimasukkan dengan betul?
Sahkan sama ada kandungan input borang adalah angka?
Item yang diperlukan (atau diperlukan)
Fungsi berikut digunakan untuk menyemak sama ada pengguna telah mengisi medan yang diperlukan (atau diperlukan) dalam bentuk Pilih) projek. Jika diperlukan atau medan yang diperlukan kosong, kotak amaran akan muncul dan nilai pulangan fungsi adalah palsu, jika tidak nilai pulangan fungsi adalah benar (bermakna tiada masalah dengan data):
function validateForm() { var x=document.forms["myForm"]["fname"].value; if (x==null || x=="") { alert("姓必须填写"); return false; } }
Fungsi di atas adalah dalam bentuk Dipanggil apabila borang diserahkan:
Instance
<!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title>php中文网(php.cn)</title> </head> <head> <script> function validateForm(){ var x=document.forms["myForm"]["fname"].value; if (x==null || x==""){ alert("姓必须填写"); return false; } } </script> </head> <body> <form name="myForm" action="demo-form.php" onsubmit="return validateForm()" method="post"> 姓: <input type="text" name="fname"> <input type="submit" value="提交"> </form> </body> </html>
Run Instance»
Klik butang "Jalankan Instance" untuk melihat contoh dalam talian
Pengesahan E-mel
Fungsi berikut menyemak sama ada data yang dimasukkan mematuhi sintaks asas sesuatu alamat e-mel.
Ini bermakna data input mesti mengandungi simbol @ dan noktah (.). Pada masa yang sama, @ tidak boleh menjadi aksara pertama alamat e-mel dan mesti ada sekurang-kurangnya satu noktah selepas @:
function validateForm(){ var x=document.forms["myForm"]["email"].value; var atpos=x.indexOf("@"); var dotpos=x.lastIndexOf("."); if (atpos<1 || dotpos<atpos+2 || dotpos+2>=x.length){ alert("不是一个有效的 e-mail 地址"); return false; } }
Berikut ialah kod lengkap bersama-sama dengan borang HTML:
Contoh
<!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title>php中文网(php.cn)</title> </head> <head> <script> function validateForm(){ var x=document.forms["myForm"]["email"].value; var atpos=x.indexOf("@"); var dotpos=x.lastIndexOf("."); if (atpos<1 || dotpos<atpos+2 || dotpos+2>=x.length){ alert("不是一个有效的 e-mail 地址"); return false; } } </script> </head> <body> <form name="myForm" action="demo-form.php" onsubmit="return validateForm();" method="post"> Email: <input type="text" name="email"> <input type="submit" value="提交"> </form> </body> </html>
Jalankan Instance»
Klik butang "Run Instance" untuk melihat contoh dalam talian