שלח תשובה

זירת השאלות

555
צפיות
9
תשובות

JS

,‏ 16 בינואר, 2004

למה הקוד הזה לא עובד?


<script type="text/javascript">
function logIn() {
If (document.forms.LoginForm.StrNickName.length>6)
{
alert("שם משתמש מעל שישה תווים");
return false
}
}
</script>
<FORM Name="LoginForm" ACTION="Connect.asp?Login_Mode=2" Method="post" onsubmit="return logIn();">
<INPUT NAME="StrNickName" TYPE="TEXT" STYLE="inputOne">
<INPUT TYPE="TEXT" NAME="StrPassWord" STYLE="inputOne">
<INPUT TYPE="submit" STYLE="inputOne" VALUE=" שלח ">
</FORM>

תגיות:

9 תשובות

  1. squarepusher הגיב:

    תשובה
    תנסה
    document.LoginForm.StrNickName.value.length

  2. Big_Rb הגיב:

    :/
    כתוב שבשורה הזאת:


    If (document.forms.LoginForm.StrNickName.value.length>6)

    בתוו הראשון דרוש אובייקט.

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

    אתה מנסה לגשת אל הטופס בצורה שגויה.
    תראה, אתה יכול לגשת לטפסים במסמך או לפי השם שלהם, או לפי המיקום שלהם באובייקט forms (ששיך לאובייקט document).

    בשורה שאתה מקבל עליה את השגיאה, אתה מבצע מין שילוב מוזר של שתי השיטות – document.forms.LoginForm…

    אם אתה משתמש ב document.forms, אתה צריך להתייחס ל forms כאל מערך שמחזיק את כל הטפסים שיש לך במסמך – כלומר, בהנחה וזה הטופס היחיד:

    If (document.forms[0].StrNickName.value.length>6)

    אם אתה מעדיף להגיע את הטופס לפי השם שלו, כמוני, אתה צריך לכתוב

    If (document.LoginForm.StrNickName.value.length>6)

    קאפיש?

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

    עוד הבהרונת לגבי document.forms
    כתבתי "בהנחה וזה הטופס היחיד", כשהייתי צריך לכתוב "בהנחה וזה הטופס היחיד או הראשון". אם זה הטופס השני במסמך, הגישה אליו תהיה, כמובן, בעזרת [
    document.forms[1

  5. Big_Rb הגיב:


    עדיין כתוב דרוש אובייקט בשורה עם הif בתוו הראשון…
    (בשתי השיטות..)

  6. if!=If
    תכתוב את המילה "if" באותיות קטנות.
    JavaScript היא case-sensitive-language.

שלח תשובה