4416
צפיות
צפיות
7
תשובות
תשובות
בעייה לא עובד לי בדיקת התקינות של המייל
אני אשמח לעזרה ולהסבר על למה זה לא עבד!
זה די דחוף!!!!
אני עובדת ב javascript
כל אחד מהתנאים לבד עובד
ביחד אף אחד לא עובד! זה מדכא אותי ממש
!!!!!!!!!!!!!
function check()
//הפונקציה בודקת את נכונות הפרטים שהמשתמש הכניס למערכת
{//בדיקה למייל
var email=document.myform.mail.value;
if(email.length==0 && email.indexOf("@")<=0 && email.indexOf("@")!=email.lastIndexOf("@") && email.charAt("@")==email.length-1 && email.indexOf(".")==-1 && email.indexOf(".")==0 && email.indexOf(".")==email.length-1 && email.indexOf("@")+1==email.indexOf(".") && email.substring(email.indexOf(".")+1).length<3)
{
alert("המייל שהכנסת שגוי או שלא הכנסת מייל, נסה שוב!");
return false;
}
else
return true;
}
7 תשובות
Using regular expressions is probably the best way. Here's an example
function validateEmail(email)
{
var re = /^(([^<>()[]\.,;:s@"]+(.[^<>()[]\.,;:s@"]+)*)|(".+"))@(([[0-9]{1,3}.[0-9]{1,3}.[0-9]{1,3}.[0-9]{1,3}])|(([a-zA-Z-0-9]+.)+[a-zA-Z]{2,}))$/;
return re.test(email);
}
its return true or false
script language="javascript">
function checkEmail() {
var email = document.getElementById('txtEmail');
var filter = /^([a-zA-Z0-9_.-])+@(([a-zA-Z0-9-])+.)+([a-zA-Z0-9]{2,4})+$/;
if (!filter.test(email.value)) {
alert('Please provide a valid email address');
email.focus;
return false;
}
}</script>
לא הבנתי כלום! מה זה הסימנים האלו לא ככה לימדו אותנו בכיתה. אני ממש לא מבינה את זה!
וגם לא הבנתי מה לא בסדר במה שאני רשמתי!
קודם כל השתמשת בפונק' charAt שהיא מקבלת בכלל מספר ולא טקסט (כתבת email.charAt("@")). תסתכלי פה על הסבר מפורט ודוג' : http://www.w3schools.com/jsref/jsref_charat.asp
דבר שני, ליצור בדיקת תקינות למייל עם תנאים כאלה יכול להיות מאוד מסורבל ומאוד מסובך ומה שניסו להראות לך זה שימוש בביטויים רגולריים (Regular Expression): אתה יוצר תבנית מסויימת ובודק אם המחרוזת טקסט שלך מתאימה לתבנית. בכל מקרה, ליצור בדיקה עם regular expressions זה גם לא כל כך פשוט.. אבל ביטויים רגולריים זה כבר נושא קצת מסובך ואם את לומדת בכיתה אז עדיף שתתייעצי עם המורה לגבי זה.
תודה הצלחתי לסדר את הבעייה שלי XD
נראה לי שפשוט עלייך להשתמש באופרטור לוגי של or (||) ולא של AND (&&), תביני, התנאי שכתבת יתבצע רק במידה וכל התנאים הלא טובים של האימייל מתקיימים, אם תשתמשי בOR אז במידה והאימייל לא תואם את אחד התנאים שלך, התנאי יתקיים ויוחזר שקר. מקווה שהבנת, אם לא תוכלי ליצור איתי קשר במייל