שלח תשובה

זירת השאלות

605
צפיות
8
תשובות

בדיקה קטנה בג'אווה סקריפט שלא עובדת

,‏ 30 בינואר, 2004

טופס פשוט עם בדיקת שם ומייל אבל פיספסתי משהו שם, הנה הקוד:


<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 תשובות

  1. לא שלחת לפונקציה את הערכים
    הקריאה לפונקציה שלך צריכה להיעשות ככה:

    OnClick="javascript:validate(contact.phone_number.value, contect.email.value)"

  2. זו בהחלט אחת מהבעיות
    אם זה לא תיקן לגמרי, זה לפחות קידם אותך קצת.
    תראה לנו את הקוד המעודכן ונמשיך.

  3. mynameispepper הגיב:

    בבקשה…
    הסקריפט:


    <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>

  4. זהר פלד הגיב:

    אני לא חושב שמותר לך להשתמש
    במילה name בתור שם של פקד טופס.

    חוצמזה, שב HTML שהראית כאן, בכלל אין פקד טופס כזה – יש phone_number ויש email, אבל אין name…

  5. mynameispepper הגיב:

    שיניתי את 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>

    כל כך מוזר…
    מה תוקע את זה?! מה?!

  6. זה עובד
    אבל פונק' בדיקת האימייל שלך לא תקינה…

    ראה את הקוד שלך בקובץ המצורף – הטופס בהחלק לא נשלח אם לא ממלאים את השדות, כך שהבעיה היא בפונק'.

שלח תשובה