605
צפיות
צפיות
8
תשובות
תשובות
בדיקה קטנה בג'אווה סקריפט שלא עובדת
טופס פשוט עם בדיקת שם ומייל אבל פיספסתי משהו שם, הנה הקוד:
<script language="javascript">
function validate(name, email)
{
if (name=="")
{
alert("Please insert your first name")
document.contact.name.focus()
return
}
if (/^w+([.-]?w+)*@w+([.-]?w+)*(.w{2,3})+$/.test(email))
{
return (true)
alert("Invalid E-mail Address! Please re-enter.")
document.contact.email.focus()
return (false)
}
else
{
document.contact.submit()
}
}
</script>
הטופס עם ה HTML:
<form name="contact" action="dd.asp" method="post">
<input type="text" name="phone_number">
<input type="text" dir="ltr" name="email">
<input type="button" value="send" class="SubmitButton" OnClick="javascript:validate(name, email)">
</form>
למה זה לא עובד?
מה עשיתי לא נכון שם?
8 תשובות
לא שלחת לפונקציה את הערכים
הקריאה לפונקציה שלך צריכה להיעשות ככה:
OnClick="javascript:validate(contact.phone_number.value, contect.email.value)"
לא נראה לי שזו הבעיה, זה לא עובד.
זו בהחלט אחת מהבעיות
אם זה לא תיקן לגמרי, זה לפחות קידם אותך קצת.
תראה לנו את הקוד המעודכן ונמשיך.
בבקשה…
הסקריפט:
<script language="javascript">
function validate(name, email)
{
if (name=="")
{
alert("Please insert your first name")
document.contact.name.focus()
return
}
if (/^w+([.-]?w+)*@w+([.-]?w+)*(.w{2,3})+$/.test(email))
{
return (true)
alert("Invalid E-mail Address! Please re-enter.")
document.contact.email.focus()
return (false)
}
else
{
document.contact.submit()
}
}
</script>
ה HTML:
<form name="contact" action="dd.asp" method="post">
<input type="text" name="phone_number">
<input type="text" dir="ltr" name="email">
<input type="button" value="send" class="SubmitButton" OnClick="javascript:validate(contact.name.value, contact.email.value)"
</form>
אני לא חושב שמותר לך להשתמש
במילה name בתור שם של פקד טופס.
חוצמזה, שב HTML שהראית כאן, בכלל אין פקד טופס כזה – יש phone_number ויש email, אבל אין name…
שיניתי את name ועדיין…
function validate(full_name, email)
{
if (full_name=="")
{
alert("Please insert your name")
document.contact.full_name.focus()
return
}
if (/^w+([.-]?w+)*@w+([.-]?w+)*(.w{2,3})+$/.test(email))
{
alert("Invalid E-mail Address! Please re-enter.")
document.contact.email.focus()
return
}
else
{
document.contact.submit()
}
}
<form name="contact" action="send.asp" method="post">
<input type name="full_name">
<input type dir="ltr" name="email">
<input type="button" value="send" class="SubmitButton" OnClick="javascript:validate(contact.full_name.value, contact.email.value)">
</form>
כל כך מוזר…
מה תוקע את זה?! מה?!
זה עובד
אבל פונק' בדיקת האימייל שלך לא תקינה…
ראה את הקוד שלך בקובץ המצורף – הטופס בהחלק לא נשלח אם לא ממלאים את השדות, כך שהבעיה היא בפונק'.
תודה