פורסם 2009 בפברואר 416 שנים יש לי פונקציה אחת שבודקת שבשדה לא יהיו מספרים, וזה עובד והכל בסדראחרי זה קראתי לאותה פונקציה לשדה נוסף ופתאום שום דבר לא עבד, כל הבדיקות תקינות לא עבדו.מה זה יכול להיות ? אולי אי אפשר להשתמש באותה פונקציה לכמה שדות ?
פורסם 2009 בפברואר 416 שנים מחבר HTMLif (onlyletters(document.tofes.firstname.value)==false) { document.getElementById("div6").innerHTML="השם הפרטי לא יכול להכיל מספרים"; document.tofes.firstname.focus(); document.tofes.firstname.select(); valid = false; }if (onlyletters(document.tofes.lastname.value)==false) { document.getElementById("div7").innerHTML="שם המשפחה לא יכול להכיל מספרים"; document.tofes.lastname.focus(); document.tofes.lastname.select(); valid = false; }
פורסם 2009 בפברואר 516 שנים מחבר הקטע שהפונקציה עובדת, רק כאשר אני בא להשתמש בא על עוד שדה זה פיתאום לא עובד...הינה כל הקוד:<html dir="rtl"><head> <style type="text/css"> table { font-family: arial, verdana, sans-serif; font-size: 13px; } div { color: red; } </style> <script language="javascript"> function onlyletters(word) { for (i=0; i<word.length; i++) { if (word.charAt(i)>='0' && word.charAt(i)<='9') return(false); return(true); } } function equalPassword(pas1,pas2) { if (pas1!=pas2) return(false); return(true); } function equalemail(mail1,mail2) { if (mail1!=mail2) return(false); return(true); } function mailValid(mail) { var badST="!#$%^&*()+[]{}\,<>/?"; for (i=0; i<badST.length; i++) { var badChar=badST.charAt(i); if (mail.indexOf(badChar)!=-1) { document.getElementById("div4").innerHTML='כתובת הדוא"ל מכילה תו לא חוקי'; return(false); } else document.getElementById("div4").innerHTML=""; } var shtrudel=mail.indexOf('@'); if (shtrudel<2) { document.getElementById("div4").innerHTML='כתובת הדוא"ל אינה מכילה שתרודל או שמיקומו בהתחלה'; return(false); } else document.getElementById("div4").innerHTML=""; if (mail.split('@').length>2) { document.getElementById("div4").innerHTML='כתובת הדוא"ל מכילה יותר משתרודל אחד'; return(false); } else document.getElementById("div4").innerHTML=""; return(true); document.getElementById("div4").innerHTML=""; } function checkForm() { var valid = true; document.getElementById("div1").innerHTML=""; document.getElementById("div2").innerHTML=""; document.getElementById("div3").innerHTML=""; document.getElementById("div4").innerHTML=""; document.getElementById("div5").innerHTML=""; document.getElementById("div6").innerHTML=""; document.getElementById("div7").innerHTML=""; if (document.tofes.username.value.length<=3) { document.getElementById("div1").innerHTML="שם המשתמש חייב להכיל לפחות ארבעה תווים"; document.tofes.username.focus(); document.tofes.username.select(); valid = false; } if (document.tofes.pas1.value.length<=5) { document.getElementById("div2").innerHTML="הסיסמה חייבת להכיל לפחות שישה תווים"; document.tofes.pas1.focus(); document.tofes.pas1.select(); valid = false; } if (!equalPassword(document.tofes.pas1.value,document.tofes.pas2.value)) { document.getElementById("div3").innerHTML="הסיסמאות אינן תואמות"; document.tofes.pas2.focus(); document.tofes.pas2.select(); valid = false; } if (mailValid(document.tofes.mail1.value)==false) { document.tofes.mail1.focus(); document.tofes.mail1.select(); valid = false; } if (!equalemail(document.tofes.mail1.value,document.tofes.mail2.value)) { document.getElementById("div5").innerHTML='כתובות הדוא"ל אינן תואמות'; document.tofes.mail1.focus(); document.tofes.mail2.select(); valid = false; } if (onlyletters(document.tofes.firstname.value)==false) { document.getElementById("div6").innerHTML="השם הפרטי לא יכול להכיל מספרים"; document.tofes.firstname.focus(); document.tofes.firstname.select(); valid = false; } if (onlyletters(document.tofes.lastname.value)==false) { document.getElementById("div7").innerHTML="שם המשפחה לא יכול להכיל מספרים"; document.tofes.lastname.focus(); document.tofes.lastname.select(); valid = false; } if (valid == true) window.alert("תודה שנרשמת"); return valid; } </script></haed> <body bgcolor="#DCDCDC"> <form name="tofes" onsubmit="return checkForm()"> <table> <tr><td colspan="3" bgcolor="#6495ED"><font size="2">שם משתמש וסיסמה</font></td></tr> <tr><td width="150" align="left">שם משתמש: </td><td><input type="text" name="username" maxlength="20"></td><td width="300" align="left"><div id="div1"></div></tr> <tr><td align="left">סיסמה: </td><td><input type="password" name="pas1" maxlength="20"></td><td align="left"><div id="div2"></div></td></tr> <tr><td align="left">וודא סיסמה: </td><td><input type="password" name="pas2" maxlength="20"></td><td align="left"><div id="div3"></div></td></tr> <tr><td colspan="3" bgcolor="#6495ED"><font size="2">כתובת דוא"ל</font></td></tr> <tr><td align="left">כתובת דוא"ל: </td><td><input type="text" name="mail1" maxlength="20"></td><td align="left"><div id="div4"></div></td></tr> <tr><td align="left">וודא כתובת דוא"ל: </td><td><input type="text" name="mail2" maxlength="20"></td><td align="left"><div id="div5"></div></td></tr> <tr><td colspan="3" bgcolor="#6495ED"><font size="2">פרטים אישיים</font></td></tr> <tr><td align="left">שם פרטי: </td><td><input type="text" name="firstname" maxlength="20"></td><td align="left"><div id="div6"></div></td></tr> <tr><td align="left">שם משפחה: </td><td><input type="text" name="lastname" maxlength="20"></td><td align="left"><div id="div7"></div></td></tr> <tr><td align="left">מין: </td><td><select name="min"> <option value="asd"> </option> <option value="zahar">זכר</option> <option value="nekeva">נקבה</option> </td></tr> <tr><td align="left">תאריך לידה: </td><td><input type="text" name="lastname" size="4" maxlength="4"> / <input type="text" name="lastname" size="2" maxlength="2"> / <input type="text" name="lastname" size="2" maxlength="2"></td></tr> <tr><td colspan="3" bgcolor="#6495ED"><font size="2">על עצמי</font></td></tr> <tr><td align="left">כינוי: </td><td><input type="text" name="hoby"></td></tr> <tr><td align="left">תחום התעניינות: </td><td><input type="text" name="hoby"></td></tr> <tr><td align="left">חבר בקבוצה: </td><td><input type="text" name="hoby"></td></tr> <tr><td align="left">זמן אימון: </td><td><input type="text" name="trainingL"></td></tr> <tr><td align="left">נעליים: </td><td><input type="text" name="shus"></td></tr> <tr><td align="left">תרגיל אהוב: </td><td><input type="text" name="hoby"></td></tr> </table> <br><br><br> <input type="submit" name="send" value="סיים הרשמה"> </form> </body></html>
פורסם 2009 בפברואר 516 שנים בתור התחלה,שנה את </haed>ל</head>ותוסיף את זה בתוך הhead<meta http-equiv="content-type" content="text/html; charset=windows-1255">
פורסם 2009 בפברואר 516 שנים כמו שחשבתי יש לך טעות בפונקציה, היה צריך להיות כך:function onlyletters(word){ for (i=0; i<word.length; i++) { if (word.charAt(i)>='0' && word.charAt(i)<='9') return(false); } return(true);}לגבי ה-encoding, עדיף לעבוד ב-utf-8 ולא ב-windows-1255 כמו שהומלץ לך מעלי.
פורסם 2009 בפברואר 516 שנים בצד שרת העבודה ביוניקוד לרוב טבעית יותר ונתמכת טוב יותר וגם קריאות ajax מצפות לקבל תשובה ביוניקוד. אם יש לך כבר אתר קיים לא הייתי טורח לשנות אבל בהקמת אתר חדש איזה סיבה יש להעדיף קידוד אחר?
פורסם 2009 בפברואר 516 שנים בטוח יעביר את השפה לעברית למקרה והדפדפן של המשתמש בdefault בסינית\אנגלית\מה שבא לך
פורסם 2009 בפברואר 516 שנים מחבר כמו שחשבתי יש לך טעות בפונקציה, היה צריך להיות כך:function onlyletters(word){ for (i=0; i<word.length; i++) { if (word.charAt(i)>='0' && word.charAt(i)<='9') return(false); } return(true);}לגבי ה-encoding, עדיף לעבוד ב-utf-8 ולא ב-windows-1255 כמו שהומלץ לך מעלי.אז לפי מה שכתבת זה רק לשים את TRUE מחוץ ל FOR - לא עובד !!גם להוסיף את השורה הזאת - <meta http-equiv="content-type" content="text/html; charset=windows-1255"> - לא עזר.
פורסם 2009 בפברואר 516 שנים ElemenTal,בלי להעליבהייתי מציע לך לקרוא ספר כמו HTML Utopia: Designing Without Tables Using CSS, 2nd Edition(רמז:השורה לא קשורה לעבודה של הפונקייצת js שלך)ואחרי זה הייתי ממליץ לך לקרוא ספר בphp\asp.net ועל אימות נתונים בצד שרת.(רמז:אם המשתמש כיבה את הjs במחשב שלו,כל האימות שלך לא יעשה כלום.)
פורסם 2009 בפברואר 516 שנים מעבר לתיקון שכבר אמרתי קודם יש לך בטופס כמה שדות input שנקראים lastname ולכן זה לא מוצא את שם המשפחה כמו שצריך ולא עובד.הדברים ש-genia מציע הם נכונים אבל לא דווקא קשורים ישירות לבעיה ששאלת עליה.
פורסם 2009 בפברואר 616 שנים מחבר ElemenTal,בלי להעליבהייתי מציע לך לקרוא ספר כמו HTML Utopia: Designing Without Tables Using CSS, 2nd Edition(רמז:השורה לא קשורה לעבודה של הפונקייצת js שלך)ואחרי זה הייתי ממליץ לך לקרוא ספר בphp\asp.net ועל אימות נתונים בצד שרת.(רמז:אם המשתמש כיבה את הjs במחשב שלו,כל האימות שלך לא יעשה כלום.)זה סך הכל עבודה במגמת מחשבים[br]פורסם בתאריך: 6.02.2009 בשעה 02:13:27מעבר לתיקון שכבר אמרתי קודם יש לך בטופס כמה שדות input שנקראים lastname ולכן זה לא מוצא את שם המשפחה כמו שצריך ולא עובד.הדברים ש-genia מציע הם נכונים אבל לא דווקא קשורים ישירות לבעיה ששאלת עליה.תודה, עובד.
ארכיון
דיון זה הועבר לארכיון ולא ניתן להוסיף בו תגובות חדשות.