Editor telah menyusun banyak contoh ekspresi reguler yang biasa digunakan dalam JavaScript sebelumnya, dan semuanya digunakan sendiri. Sekarang saya akan membaginya dengan Anda.
Salinan kode adalah sebagai berikut:
/**
* Dapatkan byte panjang string
*/
function strlen (str)
{
var i;
var len;
len = 0;
untuk (i = 0; i <str.length; i ++)
{
if (str.charcodeat (i)> 255) len+= 2; lain len ++;
}
Return Len;
}
/*
* Tentukan apakah itu angka, kembalikan benar, jika tidak kembalikan false
*/
fungsi f_check_number (obj)
{
if (/^/d+$/.test(obj.value)))
{
Kembali Benar;
}
kalau tidak
{
f_alert (obj, "Harap masukkan nomor");
mengembalikan false;
}
}
/*
* Untuk menentukan apakah itu bilangan alami, kembalikan benar, jika tidak kembalikan false
*/
fungsi f_check_naturalnumber (OBJ)
{
var s = obj.value;
if (/^[0-9]+$/. Test (s) && (s> 0))
{
Kembali Benar;
}
kalau tidak
{
f_alert (obj, "Harap masukkan nomor alami");
mengembalikan false;
}
}
/*
* Untuk menentukan apakah itu bilangan bulat, kembalikan true, jika tidak kembali salah
*/
fungsi f_check_integer (OBJ)
{
if (/^(/+|-)?/d+$/. test (obj.value))
{
Kembali Benar;
}
kalau tidak
{
f_alert (obj, "Harap masukkan bilangan bulat");
mengembalikan false;
}
}
/*
* Untuk menentukan apakah itu bilangan real, kembalikan benar, jika tidak kembalikan false
*/
fungsi f_check_float (obj)
{
if (/^(/+|-)?/d+($ | /./ d+$)/. Test (obj.value)))
{
Kembali Benar;
}
kalau tidak
{
f_alert (obj, "Harap masukkan nomor nyata");
mengembalikan false;
}
}
/*
* Periksa panjang dan akurasi nomor
*/
fungsi f_check_double (obj) {
var numreg;
var value = obj.value;
var strvaluetemp, Strint, strdec;
var dtype = obj.eos_datatype;
var pos_dtype = dtype.substring (dtype.indexof ("(")+1, dtype.indexof (")"). split (",");
var len = pos_dtype [0], prec = pos_dtype [1];
mencoba
{
numreg =/[/-]/;
strvaluetemp = value.replace (numreg, "");
numreg =/[/+]/;
strvaluetemp = strvaluetemp.replace (numreg, "");
//Bilangan bulat
if (prec == 0) {
numreg =/[/.]/;
if (numreg.test (value) == true) {
f_alert (obj, "input harus dari tipe integer");
mengembalikan false;
}
}
if (strvaluetemp.indexof (".") <0) {
if (strvaluetemp.length> (len - prec)) {
f_alert (obj, "bit integer tidak dapat melebihi" + (len - prec) + "bit");
mengembalikan false;
}
}kalau tidak{
strint = strvaluetemp.substr (0, strvaluetemp.indexof ("."));
if (strint.length> (len - prec)) {
f_alert (obj, "bit integer tidak dapat melebihi" + (len - prec) + "bit");
mengembalikan false;
}
strdec = strvaluetemp.substr ((strvaluetemp.indexof (".")+1), strvaluetemp.length);
if (strdec.length> prec) {
f_alert (obj, "Digit desimal tidak dapat melebihi" + prec + "bit");
mengembalikan false;
}
}
Kembali Benar;
} catch (e) {
alert ("di f_check_double =" + e);
mengembalikan false;
}
}
/*
* Periksa nilai maksimum minimum dari angka tersebut
* Kembali ke Bool
*/
fungsi f_check_interval (OBJ)
{
var value = parsefloat (obj.value);
var dtype = obj.eos_datatype;
var pos_dtype = dtype.substring (dtype.indexof ("(")+1, dtype.indexof (")"). split (",");
var minLimit = pos_dtype [0];
var maxlimit = pos_dtype [1];
var minval = parsefloat (pos_dtype [0]);
var maxval = parsefloat (pos_dtype [1]);
if (isnan (value))
{
f_alert (obj, "nilai harus menjadi angka");
mengembalikan false;
}
if ((isnan (minval) && (minLimit! = "-")) || (isnan (maxval) && (maxlimit! = "+"))))
{
f_alert (obj, "Nilai batas harus berupa angka atau -, +");
mengembalikan false;
}
if (minLimit == "-" &&! isnan (maxval))
{
if (value> maxval)
{
f_alert (obj, "nilai tidak dapat melebihi" + maxval);
mengembalikan false;
}
}
if (! isnan (minval) && maxlimit == "+")
{
if (value <minval)
{
f_alert (obj, "nilai tidak bisa kurang dari" + minval);
mengembalikan false;
}
}
if (! isnan (minval) &&! isnan (maxval))
{
if (minval> maxval)
{
f_alert (obj, "nilai awal" + minval + "tidak dapat lebih besar dari penghentian nilai" + maxval);
}kalau tidak
{
if (! (value <= maxval && value> = minval)))
{
f_alert (obj, "nilai harus antara" + minval + "dan" + maxval + "");
mengembalikan false;
}
}
}
Kembali Benar;
}
/*
Tujuan: Periksa apakah string input hanya terdiri dari karakter Cina
Jika benar dikembalikan dengan verifikasi, jika tidak salah
*/
fungsi f_check_zh (obj) {
if (/^ media/u4e00-/u9fa5 media+$/.test(obj.value)) {
Kembali Benar;
}
f_alert (obj, "Harap masukkan karakter Cina");
mengembalikan false;
}
/*
* Tentukan apakah itu huruf bahasa Inggris kecil. Jika ya, itu akan mengembalikan true, jika tidak, itu akan mengembalikan false
*/
fungsi f_check_lowercase (OBJ)
{
if (/^[az]+$/. test (obj.value)))
{
Kembali Benar;
}
f_alert (Obj, "Harap masukkan huruf kecil bahasa Inggris");
mengembalikan false;
}
/*
* Tentukan apakah itu huruf Bahasa Inggris yang modal, kembalikan benar, jika tidak kembalikan false
*/
fungsi f_check_uppercase (OBJ)
{
if (/^[az]+$/. test (obj.value)))
{
Kembali Benar;
}
f_alert (obj, "Harap masukkan huruf kapital");
mengembalikan false;
}
/*
* Untuk menentukan apakah itu surat bahasa Inggris, kembalikan benar, jika tidak kembalikan false
*/
fungsi f_check_letter (obj)
{
if (/^[a-za-z]+$/. test (obj.value))
{
Kembali Benar;
}
f_alert (obj, "Harap masukkan surat bahasa Inggris");
mengembalikan false;
}
/*
Tujuan: Periksa apakah string input hanya terdiri dari karakter, huruf, dan angka Cina.
memasuki:
Nilai: String
kembali:
Jika benar dikembalikan dengan verifikasi, jika tidak salah
*/
fungsi f_check_zhornumorlett (obj) {// menilai apakah itu terdiri dari karakter, surat, dan angka Cina
var regu = "^[0-9A-ZA-Z/U4E00-/U9FA5]+$";
var re = regexp baru (regu);
if (re.test (obj.value)) {
Kembali Benar;
}
f_alert (obj, "Harap masukkan karakter, surat, atau angka Cina");
mengembalikan false;
}
/*
Tujuan: Verifikasi format alamat IP
Masukkan: Strip: Alamat IP
Return: Jika benar dikembalikan dengan verifikasi, jika tidak salah dikembalikan;
*/
fungsi f_check_ip (obj)
{
var re =/^(/d+)/. (/d+)/. (/d+)/. (/d+) $/; // Alamat IP pencocokan ekspresi reguler
if (re.test (obj.value))
{
if (regexp. $ 1 <= 255 && regexp. $ 1> = 0
&& regexp. $ 2 <= 255 && regexp. $ 2> = 0
&& regexp. $ 3 <= 255 && regexp. $ 3> = 0
&& regexp. $ 4 <= 255 && regexp. $ 4> = 0)
{
Kembali Benar;
}
}
f_alert (obj, "Harap masukkan alamat IP komputer legal");
mengembalikan false;
}
/*
Tujuan: Periksa apakah nilai objek input memenuhi format nomor port
Input: string yang dimasukkan str
Return: Jika benar dikembalikan dengan verifikasi, jika tidak salah
*/
fungsi f_check_port (obj)
{
if (! f_check_number (obj))
mengembalikan false;
if (obj.value <65536)
Kembali Benar;
f_alert (OBJ, "Harap masukkan alamat IP komputer dan nomor port legal");
mengembalikan false;
}
/*
Tujuan: Periksa apakah nilai objek input memenuhi format URL
Input: string yang dimasukkan str
Return: Jika benar dikembalikan dengan verifikasi, jika tidak salah
*/
fungsi f_check_url (obj) {
var myreg = /^((http:ace/ media 5) ??/w+( med
if (myreg.test (obj.value)) kembali true;
f_alert (obj, "Harap masukkan alamat web legal");
mengembalikan false;
}
/*
Tujuan: Periksa apakah nilai objek input sesuai dengan format email
Input: string yang dimasukkan str
Return: Jika benar dikembalikan dengan verifikasi, jika tidak salah
*/
fungsi f_check_email (obj) {
var myreg = /^(ace-_a-za-z0-9/.ht+)@($_a-za-z0-9 bah/.)+ media-za-z0-9 bahter {2,3}/;
if (myreg.test (obj.value)) kembali true;
f_alert (obj, "Harap masukkan alamat email hukum");
mengembalikan false;
}
/*
Persyaratan: 1. Nomor ponsel adalah 11 atau 12 digit. Jika 12 digit, maka digit pertama adalah 0
2. Digit pertama dan kedua dari nomor ponsel 11 digit adalah "13"
Ketiga, digit kedua dan ketiga dari nomor ponsel 12 digit adalah "13"
Tujuan: Periksa apakah nomor ponsel dimasukkan dengan benar
memasuki:
S: String
kembali:
Jika benar dikembalikan dengan verifikasi, jika tidak salah
*/
fungsi f_check_mobile (obj) {
var regu =/(^[1] [3] [0-9] {9} $) | (^0 [1] [3] [0-9] {9} $)/;
var re = regexp baru (regu);
if (re.test (obj.value)) {
Kembali Benar;
}
f_alert (obj, "Harap masukkan nomor ponsel yang benar");
mengembalikan false;
}
/*
Persyaratan: 1. Nomor telepon terdiri dari angka, "(", ")" dan "-"
2. Nomor telepon adalah 3 hingga 8 digit
3. Jika nomor telepon berisi kode area, maka kode area adalah tiga atau empat digit.
4. Kode area dipisahkan dari bagian lain oleh "(", ")" atau "-"
Tujuan: Periksa apakah nomor telepon yang dimasukkan berada dalam format yang benar
memasuki:
Strphone: String
kembali:
Jika benar dikembalikan dengan verifikasi, jika tidak salah
*/
fungsi f_check_phone (OBJ)
{
var regu =/(^([0] [1-9] {2,3} [-])?/d {3,8} (-/d {1,6})? $) | (^/([0] [1-9] {2,3}/)/d {3,8} (//(/d {1,6 {/d {3,8} (/d {/d {1,6 {/d {/d {/d {/d {/d {/d {/d {1.)
var re = regexp baru (regu);
if (re.test (obj.value)) {
Kembali Benar;
}
f_alert (obj, "Harap masukkan nomor telepon yang benar");
mengembalikan false;
}
/* Tentukan apakah itu kode pos*/
fungsi f_check_zipcode (OBJ)
{
if (! f_check_number (obj))
mengembalikan false;
if (obj.value.length! = 6)
{
f_alert (obj, "panjang kode pos harus 6 digit");
mengembalikan false;
}
Kembali Benar;
}
/*
ID pengguna, yang dapat berupa kombinasi angka, huruf, dan garis bawah.
Karakter pertama tidak bisa menjadi angka, dan panjang total tidak dapat melebihi 20.
*/
fungsi f_check_userid (OBJ)
{
var userid = obj.value;
if (userid.length> 20)
{
f_alert (obj, "panjang id tidak bisa lebih besar dari 20");
mengembalikan false;
}
if (! isnan (userid.charat (0)))
{
f_alert (obj, "Karakter pertama ID tidak bisa menjadi angka");
mengembalikan false;
}
if (!/^/w {1,20} $/. test (userid))
{
f_alert (obj, "id hanya dapat terdiri dari angka, huruf, dan garis bawah");
mengembalikan false;
}
Kembali Benar;
}
/*
Fungsi: Verifikasi apakah nomor ID valid
Pesan cepat: Tidak dimasukkan atau nomor ID salah!
Gunakan: f_check_idno (obj)
Kembali: bool
*/
fungsi f_check_idno (obj)
{
var acity = {11: "beijing", 12: "tianjin", 13: "hebei", 14: "shanxi", 15: "batin Mongolia ", 21:" Liaoning ", 22:" Jilin ", 23:" Heilongjiang ", 31:" Shanghai ", 32:" Jiangsu ", 33: "Zhejiang", 34: "Anhui", 35: "Fujian", 36: "Jiangxi", 37: "Shandong", 41: "Henan", 42: "Hubei", 43: "Hunan", 44: "Guangdong", 45: "Guangxi", 46: "Hainan", 50: "Chongqing", 51: "Sichuan", 52: "Guizhou", 53: "Yun Nan ", 54:" Tibet ", 61:" Shaanxi ", 62:" Gansu ", 63:" Qinghai ", 64:" Ningxia ", 65:" Xinjiang ", 71:" Taiwan ", 81:" Hong Kong ", 82:" Macao ", 91:" asing "};
var isum = 0;
var info = "";
var stridno = obj.value;
var idcardlength = stridno.length;
if (!/^/d {17} (/d | x) $/i.test (stridno) &&!/^/d {15} $/i.test (stridno)))
{
f_alert (obj, "nomor ID ilegal");
mengembalikan false;
}
// Dalam operasi berikutnya, x setara dengan angka 10, sehingga dikonversi menjadi a
stridno = stridno.replace (/x $/i, "a");
if (acity [parseInt (stridno.substr (0,2))] == null)
{
f_alert (obj, "area ilegal");
mengembalikan false;
}
if (idcardlength == 18)
{
sBIrthday = stridno.substr (6,4)+"-"+angka (stridno.substr (10,2))+"-"+angka (stridno.substr (12,2));
var d = tanggal baru (sbirthday.replace (/-/g, "/"))
if (sbirthday! = (d.getlyear ()+ "-"+ (d.getMonth ()+ 1)+ "-"+ d.getDate ())))
{
f_alert (obj, "ulang tahun ilegal");
mengembalikan false;
}
untuk (var i = 17; i> = 0; i -)
isum += (math.pow (2, i) % 11) * parseInt (stridno.charat (17 - i), 11);
if (isum%11! = 1)
{
f_alert (obj, "nomor ID ilegal");
mengembalikan false;
}
}
lain jika (idcardlength == 15)
{
SBIrthDay = "19" + stridno.substr (6,2) + "-" + angka (stridno.substr (8,2)) + "-" + angka (stridno.substr (10,2));
var d = tanggal baru (sbirthday.replace (/-/g, "/"))
var dd = d.getlyear (). tostring () + "-" + (d.getMonth () + 1) + "-" + d.getDate ();
if (sbirthday! = dd)
{
f_alert (obj, "ulang tahun ilegal");
mengembalikan false;
}
}
Kembali Benar;
}
/*
* Tentukan apakah string memenuhi ekspresi reguler yang ditentukan
*/
fungsi f_check_formatstr (obj)
{
var str = obj.value;
var dtype = obj.eos_datatype;
var regu = dtype.substring (dtype.indexof ("(")+1, dtype.indexof (")")); // Ekspresi reguler yang ditentukan
var re = regexp baru (regu);
if (re.test (str))
Kembali Benar;
f_alert (obj, "tidak memenuhi persyaratan ekspresi reguler yang ditentukan");
mengembalikan false;
}
/*
Fungsi: Tentukan apakah itu tanggal (format: yyyy tahun mm bulan tanggal dd, yyyy-mm-dd, yyyyy/mm/dd, yyyymmdd)
Kiat: Tanggal yang tidak dimasukkan atau dimasukkan tidak benar dalam format!
Gunakan: f_check_date (obj)
Kembali: bool
*/
fungsi f_check_date (obj)
{
var date = trim (obj.value);
var dtype = obj.eos_datatype;
var format = dtype.substring (dtype.indexof ("(")+1, dtype.indexof (")")); // format tanggal
var tahun, bulan, hari, datePat, matcharray;
if (/^(y {4}) (-| //) (m {1,2})/2 (d {1,2}) $/. test (format))
datePat =/^(/d {4}) (-| //) (/d {1,2})/2 (/d {1,2}) $/;
lain if (/^(y {4}) (tahun) (m {1,2}) (bulan) (d {1,2}) (d {1,2}) (d) $/. test (format)))
datePat =/^(/d {4}) tahun (/d {1,2}) bulan (/d {1,2}) hari $/;
lain jika (format == "yyyymmdd")
datePat =/^(/d {4}) (/d {2}) (/d {2}) $/;
kalau tidak
{
f_alert (obj, "format tanggal salah");
mengembalikan false;
}
matcharray = date.match (datePat);
if (matcharray == null)
{
f_alert (obj, "Panjang tanggal tidak benar, atau ada simbol non-numerik di tanggal");
mengembalikan false;
}
if (/^(y {4}) (-| //) (m {1,2})/2 (d {1,2}) $/. test (format))
{
tahun = MatchArray [1];
Bulan = MatchArray [3];
day = matcharray [4];
} kalau tidak
{
tahun = MatchArray [1];
Bulan = MatchArray [2];
day = matcharray [3];
}
if (bulan <1 || bulan> 12)
{
f_alert (obj, "bulan harus menjadi bilangan bulat dari 1 hingga 12");
mengembalikan false;
}
if (day <1 || day> 31)
{
f_alert (obj, "jumlah hari per bulan harus menjadi bilangan bulat dari 1 hingga 31");
mengembalikan false;
}
if ((bulan == 4 || bulan == 6 || bulan == 9 || bulan == 11) && day == 31)
{
f_alert (obj, "bulan tidak ada pada tanggal 31");
mengembalikan false;
}
if (bulan == 2)
{
var isleap = (tahun % 4 == 0 && (tahun % 100! = 0 || tahun % 400 == 0));
if (day> 29)
{
f_alert (obj, "Februari memiliki hingga 29 hari");
mengembalikan false;
}
if ((day == 29) && (! Isleap))
{
f_alert (obj, "hanya ada 29 hari di tahun kabisat");
mengembalikan false;
}
}
Kembali Benar;
}
/*
Fungsi: Format verifikasi adalah tahun yyyy mm bulan dd hari hh jam mm menit ss detik, yyyy-mm-dd hh: mm: ss, yyyyy/mm/dd hh: mm: ss, yyyymmddhhmmss
Pesan cepat: format waktu yang tidak dimasukkan atau dimasukkan tidak benar
Gunakan: f_check_time (obj)
Kembali: bool
*/
fungsi f_check_time (obj)
{
var time = trim (obj.value);
var dtype = obj.eos_datatype;
var format = dtype.substring (dtype.indexof ("(")+1, dtype.indexof (")")); // format tanggal
var datePat, matcharray, tahun, bulan, hari, jam, menit, kedua;
if (/^(y {4}) (-| //) (m {1,2})/2 (d {1,2}) (hh: mm: ss) $/. test (format)))
datePat =/^(/d {4}) (-| //) (/d {1,2})/2 (/d {1,2}) (/d {1,2}): (/d {1,2}): (/d {1,2}): (/d {1,2}) $/;
lain if (/^(y {4}) (tahun) (m {1,2}) (bulan) (d {1,2}) (d {1,2}) (d) (jam hh, mm menit, ss detik) $/.
datePat =/^(/d {4}) tahun (/d {1,2}) bulan (/d {1,2}) hari (/d {1,2}) jam (/d {1,2}) menit (/d {1,2}) detik $/;
lain jika (format == "yyyymmddhhmmss")
datePat =/^(/d {4}) (/d {2}) (/d {2}) (/d {2}) (/d {2}) (/d {2}) (/d {2}) (/d {2}) $/;
kalau tidak
{
f_alert (obj, "format tanggal salah");
mengembalikan false;
}
matcharray = time.match (datePat);
if (matcharray == null)
{
f_alert (obj, "Panjang tanggal tidak benar, atau ada simbol non-numerik di tanggal");
mengembalikan false;
}
if (/^(y {4}) (-| //) (m {1,2})/2 (d {1,2}) (hh: mm: ss) $/. test (format)))
{
tahun = MatchArray [1];
Bulan = MatchArray [3];
day = matcharray [4];
jam = matcharray [5];
menit = matcharray [6];
kedua = MatchArray [7];
} kalau tidak
{
tahun = MatchArray [1];
Bulan = MatchArray [2];
day = matcharray [3];
jam = matcharray [4];
menit = matcharray [5];
kedua = MatchArray [6];
}
if (bulan <1 || bulan> 12)
{
f_alert (obj, "bulan harus menjadi bilangan bulat dari 1 hingga 12");
mengembalikan false;
}
if (day <1 || day> 31)
{
f_alert (obj, "jumlah hari per bulan harus menjadi bilangan bulat dari 1 hingga 31");
mengembalikan false;
}
if ((bulan == 4 || bulan == 6 || bulan == 9 || bulan == 11) && day == 31)
{
f_alert (obj, "bulan tidak ada pada tanggal 31");
mengembalikan false;
}
if (bulan == 2)
{
var isleap = (tahun % 4 == 0 && (tahun % 100! = 0 || tahun % 400 == 0));
if (day> 29)
{
f_alert (obj, "Februari memiliki hingga 29 hari");
mengembalikan false;
}
if ((day == 29) && (! Isleap))
{
f_alert (obj, "hanya ada 29 hari di tahun kabisat");
mengembalikan false;
}
}
if (hour <0 || hour> 23)
{
f_alert (obj, "jam harus menjadi bilangan bulat dari 0 hingga 23");
mengembalikan false;
}
if (menit <0 || menit> 59)
{
f_alert (obj, "skor harus menjadi bilangan bulat dari 0 hingga 59");
mengembalikan false;
}
if (kedua <0 || kedua> 59)
{
f_alert (obj, "detik harus bilangan bulat dari 0 hingga 59");
mengembalikan false;
}
Kembali Benar;
}
/*Menilai apakah objek saat ini terlihat*/
function isVisible (obj) {
var visatt, disatt;
mencoba{
disatt = obj.style.display;
visatt = obj.style.visibility;
} catch (e) {}
if (disatt == "none" || visatt == "tersembunyi")
mengembalikan false;
Kembali Benar;
}
/*Menilai apakah objek saat ini dan objek induknya terlihat*/
function checkPrvis (obj) {
var pr = obj.parentnode;
Mengerjakan{
if (pr == tidak terdefinisi || pr == "tidak terdefinisi") mengembalikan true;
kalau tidak{
if (! isVisible (pr)) mengembalikan false;
}
} while (pr = pr.parentNode);
Kembali Benar;
}
/* Kotak dialog peringatan muncul. Setelah pengguna mengklik untuk mengonfirmasi, tempatkan kursor pada kotak teks kesalahan, dan pilih konten input asli. */
fungsi f_alert (obj, acertinfo)
{
var caption = obj.getAttribute ("eos_displayname");
if (caption == null)
Keterangan = "";
peringatan (Caption + ":" + AlertInfo + "!");
obj.select ();
if (isVisible (obj) && checkPrvis (obj))
obj.focus ();
}
/**
* Periksa apakah string itu kosong
*/
fungsi isnull (str)
{
var i;
if (str.length == 0)
Kembali Benar;
untuk (i = 0; i <str.length; i ++)
{
if (str.charat (i)! = '')
mengembalikan false;
}
Kembali Benar;
}
/**
* Periksa apakah input kotak teks yang ditentukan adalah legal.
* Jika pengguna memasukkan sesuatu yang salah, kotak dialog prompt akan muncul.
* Pada saat yang sama, fokuslah pada kotak teks dan di depan kotak teks
* Ikon peringatan akan muncul (akan secara otomatis dihapus setelah input dengan benar).
*/
Function CheckInput (objek)
{
gambar var;
var i;
panjang var;
if (object.eos_maxsize + ""! = "tidak terdefinisi") panjang = objek.eos_maxsize;
Lainnya panjang = 0;
if (object.eos_isnull == "true" && isnull (objek.value)) mengembalikan true;
/* Periksa panjang*/
if (length! = 0 && strlen (object.value)> parseInt (length)) {
f_alert (objek, "panjang maksimum melebihi" + panjang);
mengembalikan false;
}
/* Verifikasi tipe data*/
kalau tidak {
if (object.eos_dataType + ""! = "tidak terdefinisi")
{
var dtype = object.eos_dataType;
var objname = objek.name;
// Jika nama tipe diikuti oleh tanda kurung, string sebelum tanda kurung dianggap sebagai jenis cek
if (dtype.indexof ("(")! = -1)
dType = dtype.substring (0, dtype.indexof ("("));
// Periksa sesuai dengan jenis verifikasi elemen halaman
mencoba{
if (eval ("f_check_" + dtype + "(objek)")! = true)
mengembalikan false;
} catch (e) {return true;}
/* Jika paruh pertama nama ada dalam bentuk, dan ada keduanya bidang bentuk yang diakhiri dengan "min" dan "max",
Maka itu dianggap sebagai kueri berdasarkan interval. Artinya, nilai bidang formulir akhir "min" harus kurang dari atau sama dengan nilai bidang formulir akhir "maks". */
if (objname.substring ((objname.length-3), objname.length) == "min")
{
var objmaxname = objname.substring (0, (objname.length-3)) + "max";
if (document.geteLementById (objmaxname)! = undefined && document.geteLementById (objmaxname)! = "tidak terdefinisi")
{
if (checkIntervalobjs (objek, document.geteLementById (objmaxname))! = true)
mengembalikan false;
}
}
}
}
Kembali Benar;
}
/* Periksa kebenaran semua item input dalam formulir, umumnya digunakan untuk acara Onsubmit dari formulir*/
function checkForm (myForm)
{
var i;
untuk (i = 0; i <myform.elements.length; i ++)
{
/* Atribut non-henti diabaikan*/
if (myform.ements [i] .eos_displayname + "" == "tidak terdefinisi") lanjutkan;
/* Cek tidak kosong*/
if (myForm.elements [i] .eos_isnull == "false" && isnull (myForm.elements [i] .value)) {
f_alert (myForm.elements [i], "tidak bisa kosong");
mengembalikan false;
}
/* Verifikasi tipe data*/
if (checkInput (myForm.elements [i]) == false)
mengembalikan false;
}
Kembali Benar;
}
/**
* Periksa ukuran data di dua bidang formulir, saat ini hanya tanggal dan angka yang diizinkan.
* @param obj1 bidang bentuk nilai kecil
* @param obj2 bidang bentuk bernilai besar
*/
Fungsi CheckIntervalobjs (OBJ1, OBJ2)
{
var caption1 = obj1.getAttribute ("eos_displayname");
var caption2 = obj2.getAttribute ("eos_displayname");
var val1 = parsefloat (obj1.value);
var val2 = parsefloat (obj2.value);
// atribut non-custom diabaikan
if (obj1.eos_displayname + "" == "tidak terdefinisi" || obj2.eos_displayname + "" == "tidak terdefinisi") {
mengembalikan false;
}
// Perbandingan Jenis Tanggal
if (f_check_date (obj1) == true && f_check_date (obj2) == true) {
var dtype = obj1.eos_dataType;
var format = dtype.substring (dtype.indexof ("(")+1, dtype.indexof (")")); // format tanggal
val1 = getDateByFormat (obj1.value, format);
dType = obj2.eos_datatype;
format = dtype.substring (dtype.indexof ("(")+1, dtype.indexof (")")); // format tanggal
val2 = getDateByFormat (obj2.value, format);
if (val1> val2) {
obj2.select ();
if (isVisible (obj) && checkPrvis (obj))
obj2.focus ();
Peringatan (Caption1 + "Tanggal mulai tidak bisa lebih besar dari tanggal akhirnya!");
mengembalikan false;
}
}
// Perbandingan tipe numerik
if ((isnan (val1) &&! isnull (val1)) || (isnan (val2) &&! isnull (val2))) {
peringatan (caption1 + "Jika nilai tidak semua angka adalah angka, mereka tidak dapat dibandingkan!");
mengembalikan false;
}
if (val1> val2) {
obj2.select ();
if (isVisible (obj) && checkPrvis (obj))
obj2.focus ();
peringatan (caption1 + "Nilai awal tidak dapat lebih besar dari nilai akhirnya!");
mengembalikan false;
}
Kembali Benar;
}
/* Konversi string ke objek tanggal sesuai dengan format tanggal.
Format: yyyy-year, mm-month, dd-day, hh-hour, mm-menit, ss-detik.
(Format harus ditulis secara penuh, misalnya: YY-MD, yang tidak diizinkan, jika tidak null akan dikembalikan; format tidak cocok dengan data aktual dan juga akan mengembalikan null.)
Format default: yyyy-mm-dd hh: mm: ss, yyyy-mm-dd. */
function getDateByFormat (str) {
var datereg, format;
var y, m, d, h, m, s, yi, mi, di, hai, mi, si;
if ((argumen [1] + "") == "tidak terdefinisi") format = "yyyy-mm-dd hh: mm: ss";
Format lain = argumen [1];
yi = format.indexof ("yyyy");
Mi = format.indexof ("mm");
di = format.indexof ("dd");
Hai = format.indexof ("hh");
mi = format.indexof ("mm");
si = format.indexof ("ss");
if (yi == -1 || mi == -1 || di == -1) return null;
kalau tidak{
y = parseInt (str.substring (yi, yi+4));
M = parseInt (str.substring (mi, mi+2));
d = parseInt (str.substring (DI, DI+2));
}
if (isnan (y) || isnan (m) || isnan (d)) return null;
if (hai == -1 || mi == -1 || si == -1) mengembalikan tanggal baru (y, m -1, d);
kalau tidak{
H = str.substring (hai, hai+4);
m = str.substring (mi, mi+2);
s = str.substring (si, si+2);
}
if (isnan (parseInt (y)) || isnan (parseint (m)) || isnan (parseint (d))) mengembalikan tanggal baru (y, m-1, d);
lain mengembalikan tanggal baru (y, m-1, d, h, m, s);
}
/*Ltrim (string): Lepaskan ruang di sebelah kiri*/
fungsi ltrim (str) {
var whitespace = string baru ("/t/n/r");
var s = string baru (str);
if (whitespace.indexof (s.charat (0))! = -1) {
var j = 0, i = s.length;
while (j <i && whitespace.indexof (s.charat (j))! = -1) {
j ++;
}
s = s.substring (j, i);
}
kembali S;
}
/*Rtrim (string): Lepaskan ruang di sebelah kanan*/
fungsi rtrim (str) {
var whitespace = string baru ("/t/n/r");
var s = string baru (str);
if (whitespace.indexof (s.charat (s.length -1))! = -1) {
var i = s.length - 1;
while (i> = 0 && whitespace.indexof (s.charat (i))! = -1) {
Saya--;
}
s = s.substring (0, i+1);
}
kembali S;
}
/*Trim (string): Lepaskan spasi di kedua sisi string*/
function trim (str) {
return rtrim (ltrim (str));
}