למה זה לא מצליח - JS
-
הצילום מסך שלך לא אומר לי כלום. הוא גם מבוסס על הנחה (שהפונקציה מדברת על אותו אלמנט המצולם).
האמת שכיון שאני לא יודע מי ואיך קורא לפונקציה, אז @יוסף-בן-שמעון צודק לחלוטין שיש לנו פה שאלה מאוד חלקית.
יש לך עוד כיוון בדיקה (תדפיס עםconsole.log(this)
את האלמנט ותראה מה הפלט), או שתראה לנו את קוד ההרשמה לאירוע. -
@ש-ב-ח בדיוק!
אני מציע לך טיפ שיקל עליך את העבודה: במקום שתהיה שתקשר פונקציה כללית לאירועי השינוי של כלל הradio ובתוך הפונקציה תבדוק את ערך הdata-index,
תוכל להזניק פונקציה אישית לכל אחד, שתקרא לפונקציה הכללית עם ארגומנט עם הID המתאים:input.on('change', function() { toListRegisterd(no); } );
ולשנות את הפונקציה:
function toListRegisterd(id){ alert(id); }
כמובן שאם הקוד קצר (ובהתאם לטעמך אולי גם אם זה ארוך) תוכל לחסוך את toListRegisterd ולהשתמש ישירות בפונקציה האנונימית שבפקודת ההרשמה לאירוע.
טיפ נוסף: תעבור לangularjs.
-
@ש-ב-ח אני ראיתי שאתה משתמש עם jQuery.
אז angularjs זה פשוט ספריה אחרת, והיא כן קלה מאוד, שטובה ממנה בהרבה (בשביל התוצאות המצופות).נ.ב. שים לב שאנגולר בד"כ מתייחס לאנגולר 2+ שזה ממש מסובך, ואילו angularjs מתייחס לאנגולר 1 שזה ממש ספריה חמודה כמו jQuery.
-
@yossiz אמר בלמה זה לא מצליח - JS:
למה לא נכון להשתמש ב-
this
?
https://stackoverflow.com/questions/17665489/using-this-inside-an-event-handlerלא הכרתי, תודה רבה