function checkk_Email(Obj_Name) { //=====> เช็คอีเมล์
var Obj = eval("document." + Obj_Name);
var ObjValue = eval("document." + Obj_Name + ".value.trim()");
var aCode = "a".charCodeAt(0);
var zCode = "z".charCodeAt(0);
var ACode = "A".charCodeAt(0);
var ZCode = "Z".charCodeAt(0);
var char1 = "0".charCodeAt(0);
var char2 = "9".charCodeAt(0);
var char3= "-".charCodeAt(0);
var char4= "_".charCodeAt(0);
var char5= "@".charCodeAt(0);
var char6= ".".charCodeAt(0);
s=ObjValue.length-1;
for (b=0; b <= s; b++) {
if (((ObjValue.charCodeAt(b) >= aCode) && (ObjValue.charCodeAt(b) <= zCode)) || ((ObjValue.charCodeAt(b) >= ACode) && (ObjValue.charCodeAt(b) <= ZCode)) || (ObjValue.charAt(b)=="") || ((ObjValue.charCodeAt(b) >= char1) && (ObjValue.charCodeAt(b) <= char2)) || (ObjValue.charCodeAt(b) == char3) || (ObjValue.charCodeAt(b) == char4) || (ObjValue.charCodeAt(b) == char5) || (ObjValue.charCodeAt(b) == char6)) {
}
else {
alert("Invalid email.");
//Obj.value = "";
Obj.focus();
return false;
}
}
if (!ObjValue) {alert("Please type email."); Obj.focus(); return false;} // ถ้าไม่ใส่เมล์
if (ObjValue.length < 6) {alert("Invalid email."); Obj.value = ""; Obj.focus(); return false;} // ถ้าไม่ถึง 6 ตัว
if (((ObjValue.charCodeAt(0) >= aCode) && (ObjValue.charCodeAt(0) <= zCode)) || ((ObjValue.charCodeAt(b) >= ACode) && (ObjValue.charCodeAt(b) <= ZCode)) || ((ObjValue.charCodeAt(0) >= char1) && (ObjValue.charCodeAt(0) <= char2))) { // ถ้าตัวแรกไม่ใช่ตัวอักษร
}
else {
alert("Invalid email.");
//Obj.value = "";
Obj.focus();
return false;
}
if (ObjValue.indexOf("@") == -1) {alert("Invalid email."); Obj.focus(); /*Obj.value = "";*/ return false;} // ดูว่ามี @ หรือไม่
if (ObjValue.indexOf("@") != -1) { // ดูว่ามี @ เกิน 1 ตัวหรือไม่
L = ObjValue.indexOf("@");
strCut = ObjValue.substr(L + 1);
if (strCut.indexOf("@") != -1) {
alert("Invalid email.");
//Obj.value = "";
Obj.focus();
return false;
}
}
if (ObjValue.indexOf(".") == -1) {alert("Invalid email."); Obj.focus(); /*Obj.value = "";*/ return false;} // ดูว่ามี . หรือไม่
//return true;
//return false;
}
function canSubmit() {
var f = document.form;
if (!f.txtMemberUsername.value) {alert("กรุณาใส่ E-mail ผู้ใช้"); f.txtMemberUsername.focus(); return false;}
if (f.txtMemberUsername.value) { return checkk_Email("form.txtMemberUsername");}
if (!f.txtMemberPassword.value) {alert("กรุณาใส่รหัสผ่าน"); f.txtMemberPassword.focus(); return false;}
if (f.txtMemberPassword.value.length < 4) {alert("รหัสผ่านต้องมีความยาว 4 - 20 ตัวอักษร"); f.txtMemberPassword.focus(); return false;}
if (f.txtMemberPassword.value != f.txtMemberConfirmPassword.value) {alert("ยืนยันรหัสผ่านไม่ถูกต้อง"); f.txtMemberPassword.value = ""; f.txtMemberConfirmPassword.value = ""; f.txtMemberPassword.focus(); return false}
return true;
}
</script>
คือผมให้ Event ของ Onsubmit ว่า ถ้ากด Submit ให้กลับไปเช็คที่ function canSubmit()
โดยเริ่มแรก เช็คค่าว่าง E-mail จาก function canSubmit()
จากนั้น เช็ครูปแบบของการกรอก E-mail จาก Function checkk_Email()
หากรูปแบบผ่าน ให้กลับมา เช็คค่าว่างของ password ต่อใน function canSubmit()
ที่นี้ การเช็ครูปแบบ E-mail ผ่านแล้ว ผมจึงใส่ return canSubmit(); ที่บรรทัดล่างสุดของ Function checkk_Email() เพื่อให้ระบบกลับมาเช็คช่องว่างอื่นต่อ แต่ดันเกิดerror out of memory at line...
เลยอยากรู้ว่า มันทำการเช็ค function กลับไปกลับมาได้หรือไม่ครับ
ขอบคุณครับ
Tag : PHP, JavaScript
Date :
2011-11-25 17:17:02
By :
muaeenth99
View :
975
Reply :
1
No. 1
Guest
function canSubmit() {
var f = document.form;
if (!f.txtMemberUsername.value) {alert("กรุณาใส่ E-mail ผู้ใช้"); f.txtMemberUsername.focus(); return false;}
if (checkk_Email(document.form.status.value) == false){
return false
}