יוסטון - יש לי בעיה...

דלילה

New member
יוסטון - יש לי בעיה...

יש לי לינק שהוא יכול להיות ריק (הוא נבנה דרך XML) הבעיה היא: אני שואלת אם הוא ריק - ואם כן אני כותבת: return false ואז הוא באמת חוזר אבל הלינק מופעל! למה?? (זה מתבצע בפונקציה onclick של הלינק...)
 

rmarko

New member
קוד, בבקשה ../images/Emo17.gif

אגב למה לא לבדוק אם הוא ריק עוד לפני שאת פולטת את טאג <a>
 

דלילה

New member
אני שואלת אחרי שהוא כבר קיים

זה ב- onclick של הלינק הקוד: שאלה אם יש את ה-href בXML if (NavTreeXML.documentElement.childNodes[curRow - 1].selectSingleNode(´HrefMain´).text == "") return false התגית עצמה: <a DATAFLD=´HrefMain´ target=´FrmInfo´ onclick="openModulesLevel(this)">
 

דלילה

New member
שכללתי את זה ואני שואלת

if (obj.href == "") return false כאשר obj זה בעצם this שאני שולחת לפונקציה וזה לא עובד - הוא נכנס לתנאי אבל הוא עדין מפעיל את הקישור ומנסה לפתוח דף ריק...
 

rmarko

New member
xml זה אחד מהדברים האלה

שלא יצא לי ליגוע בהם
תסתכלי על ה- source של הפלט שלך, באמת מופיע לך שם "onclick="return false
מדובר הרי בסופו של דבר בסקיפט צד לקוח.
 

דלילה

New member
אני מחזירה בפונקציה

אם זה false יש סיבה שזה לא יעבוד כלומר שיחזור false והלינק עדין יעבוד? (סיבה ב- JS) ? ואני ממליצה על לימוד ועבודהב-XML
 

rmarko

New member
false או return false ../images/Emo35.gif

תבדקי באמת בתוך ה- view source, אם אכן הסקריפט שלך פולט את השורה בסופו של דבר בתצורת <a href="blah" onclick="return false;">fdsafds</a> כי ככה זה אמור להראות בשביל שאקספלורר ידע שכשאת לוחצת על הלינק - שהוא לא יעשה כלום. את האמת, אקספלורר גם יעבוד בלי ה- ; שם, אבל ספק אם נטסקייפ כן.
 

דלילה

New member
ה- view source לא עוזר לי

יש לי: <a href="" onklick=f(this)> ופונקציה: function f(obj){ if (obj.href == "") return false } ואני יודעת שהוא נכנס לתנאי - כלומר מחזיר false אבל זה הלינק מופעל...
 
זהו... חזרתי מהאוכל...

את צריכה לכתוב ב-onclick את המילה return לפני הקריאה לפונקציה. ככה: onclick = "return f(this)" ואז זה יעבוד.
 

דלילה

New member
אז זהו שלא... ../images/Emo10.gif

<a DATAFLD=´HrefMain´ target=´FrmInfo´ onclick="return(openModulesLevel(this))"> מה יהיה? אני אהיה קירחת מרוב תלישת שיערות
 
רגע רגע... זה onclick של קישור!

אז ברור שזה לא יעבוד... כי ה-HREF אף פעם לא יהיה ריק. הוא תמיד יכיל גם את הדומיין של השרת עליו נמצא הקישור.
 
אופס... נשלחה ההודעה מוקדם מדי...

מה שאת יכולה לעשות זאת פונקציה קצת יותר מתוחכמת אך יחד עם זאת, ערבית, משהו... שזה בסה"כ למצוא את הדומיין עליו את נמצאת (או פשוט לבדוק כמה אותיות יש מעבר למספר הסימנים שמרכיבים את הדומיין) מתוך המחרוזת שחוזרת מה-href... ואז לפעול לפי זה.
 

דלילה

New member
כאשר אני שואלת על ה-href זה

כן עובד לי, וגם אם לא בכל מקרה הוא מגיע אלי כתגית מהXML אז הייתי מבצעת עליו חיפוש ושואלת אם התגית ריקה :)
 

דלילה

New member
טוב אני הגאונה שרשמתי מעל התנאי

פקודה שלא עובדת במקרה שהתנאי מתקיים והוא פשוט לא המשיך במקום להביא לי שגיאה של JS הוא ממש נחמד :) אז תודה לשניכם
 

rmarko

New member
view source לא עוזר ../images/Emo35.gif

כנראה שאאלץ ללכת בהצעתך ואכן ללמוד xml - אם קשה לי להבין איך view source לא עוזר במקרים שכאלה, כנראה שאני לא מבין ולו חצי דבר ב- xml
זה לא שיש לי משהו יותר טוב לעשות
 
למעלה