18-12-2007, 15:16
|
|
|
חבר מתאריך: 30.07.05
הודעות: 949
|
|
כדי להבין מה לא בסדר בקוד שלך, חשוב להבין מה בדיוק קורה בשורה הבאה שלך:
קוד:
document.myForm.fName.value.length;
document - זהו הפרמטר המתייחס לכל המסמך (הדף) שלך שממנו הסקריפט נקרא.
עקרונית, זהו הפרמטר ב-"ה" הידיעה שמכיל בערך את כל מה שהצבת על הדף.
myForm - שם של אלמנט במסמך (document).
עקרונית, הגישה שלך היא נכונה, אתה רוצה לגשת לאלמנט שנמצא בטופס (form) שלך, ולכן מתוך כל המסמך (document) אתה רוצה להתייחס רק לטופס.
אלא מה, אין לך בכלל אלמנט בדף שלך בשם myForm...
ע"מ שאלמנט כזה יהיה קיים, אתה צריך קודם כל להגדיר אלמנט עם שם (name) כזה:
קוד:
<form name="myForm" action="" method="POST">
כעת, הביטוי document.myForm יביא אותך להתייחס לטופס שלך.
fName - שם של אלמנט שנמצא בתוך האלמנט myForm.
גם פה, הגישה שלך היא נכונה, מכל הטופס אתה רוצה לבחור אלמנט אחד (במקרה שלנו שדה קלט) שממנו\עליו אתה רוצה לעשות את הפעולות, אלא ששוב לא קיים לך בכלל אלמנט כזה בטופס, ובעצם, גם לא בדף...
בין תגי ה-FORM אתה צריך להוסיף את האלמנט ממנו אתה מתכוון לקרוא:
קוד:
<input type="text" name="fName">
כעת אתה באמת יכול להתייחס לערך שנמצא בתוכו - כי האלמנט קיים!
בקשר להרחבה שלך, value אכן יקח את הערך של השדה, השאלה היא רק האם מותר לך לשים מיידית הרחבה של length או שצריך קודם לעשות המרה ברורה לטיפוס String.. זה אני כבר לא ממש זוכר, תבדוק.
_____________________________________
חתימתכם הוסרה כיוון שלא עמדה בחוקי האתר. לפרטים נוספים לחצו כאן. תוכלו לקבל עזרה להתאמת החתימה לחוקים בפורום חתימות וצלמיות.
|