เนื่องจาก form เค้าสร้างมาเพื่อให้ไปเช็คกับ function SubmitContact(javascript)
แต่โจทย์เค้าเพิ่มมาว่า ให้ส่งค่า txtEmail ไปเช็คกับอีก function ValidEmail(javascript)
ไม่ทราบว่าจะต้องเพิ่มตรงไหนเพื่อให้เรียกใช้ 2 function พร้อมกันเหรอคะ
Tag : PHP, JavaScript
Date :
2010-09-01 15:19:22
By :
naked13
View :
1166
Reply :
9
No. 1
Guest
ก็เพิ่มใน function SubmitContact
โดยเพิ่ม ส่วนของ field ที่เป้น txtEmail นำมาเช็ค ร่วมกับ function ValidEmail
ตย
ของเก่า
function SubmitContact(){
/* สมมติของเก่ามีการ check แค่ name */
if (document.all.txtName.value = ''){
alert("name not null !!");
return false;
}
}
ของใหม่ มี validateMail
function ValidEmail(email){
if (เงื่อไขในการตรวจสอบ == false)
return false
}
function SubmitContact(){
/* สมมติของเก่ามีการ check แค่ name */
if (document.all.txtName.value = ''){
alert("name not null !!");
return false;
}
if (ValidEmail(document.all.txtEmail.value) == false)
return false
<html>
<head>
<title></title>
<script language="javascript">
function SubmitContact(){
var name = formContact.txtName.value;
var email = formContact.txtEmail.value;
var message = formContact.txtMessage.value;
if (name == "" || email == "" || message == ""){
alert("ใส่ข้อมูลให้ครบทุกช่อง ถึงจะส่งข้อมูลได้ !!");
return false;
}
if (ValidEmail(email) == false){
alert("ตรวจสอบรูปแบบของ email ให้ถูกต้อง !!");
return false;
}
if(message.length < 10){
alert("ข้อความจะต้องมีอย่างน้อย 10 ตัวอักษร !!");
return false;
}
}
function ValidEmail(str) {
// These comments use the following terms from RFC2822:
// local-part, domain, domain-literal and dot-atom.
// Does the address contain a local-part followed an @ followed by a domain?
// Note the use of lastIndexOf to find the last @ in the address
// since a valid email address may have a quoted @ in the local-part.
// Does the domain name have at least two parts, i.e. at least one dot,
// after the @? If not, is it a domain-literal?
// This will accept some invalid email addresses
// BUT it doesn't reject valid ones.
var atSym = str.lastIndexOf("@");
if (atSym < 1) { return false; } // no local-part
if (atSym == str.length - 1) { return false; } // no domain
if (atSym > 64) { return false; } // there may only be 64 octets in the local-part
if (str.length - atSym > 255) { return false; } // there may only be 255 octets in the domain
// Is the domain plausible?
var lastDot = str.lastIndexOf(".");
// Check if it is a dot-atom such as example.com
if (lastDot > atSym + 1 && lastDot < str.length - 1) { return true; }
// Check if could be a domain-literal.
if (str.charAt(atSym + 1) == '[' && str.charAt(str.length - 1) == ']') { return true; }
return false;
}
</script>
</head>
<body>
<form name="formContact" method="post" action="submitcontact.php" onsubmit="return SubmitContact()">
<table border="0" width="50%" align="center" bgcolor="#D1D1D1">
<tr>
<td>ชื่อ-นามสกุล* </td>
<td><input type="text" name="txtName" id="txtName" /></td>
</tr>
<tr>
<td>อีเมล* </td>
<td><input type="text" name="txtEmail" id="txtEmail" /></td>
</tr>
<tr>
<td>ข้อความ* </td>
<td><textarea name="txtMessage" id="txtMessage" rows="3"></textarea></td>
</tr>
<tr>
<td colspan="2" align="center">
<input type="submit" name="btnSend" value="ส่ง" style="width:100px" />
</td>
</tr>
</table>
</form>
</body>
</html>