דילוג לתוכן
  • דף הבית
  • קטגוריות
  • פוסטים אחרונים
  • משתמשים
  • חיפוש
  • חוקי הפורום
כיווץ
תחומים

תחומים - פורום חרדי מקצועי

💡 רוצה לזכור קריאת שמע בזמן? לחץ כאן!
  1. דף הבית
  2. תכנות
  3. למה זה לא מצליח - JS

למה זה לא מצליח - JS

מתוזמן נעוץ נעול הועבר תכנות
15 פוסטים 4 כותבים 413 צפיות 3 עוקבים
  • מהישן לחדש
  • מהחדש לישן
  • הכי הרבה הצבעות
תגובה
  • תגובה כנושא
התחברו כדי לפרסם תגובה
נושא זה נמחק. רק משתמשים עם הרשאות מתאימות יוכלו לצפות בו.
  • dovidD dovid

    @ש-ב-ח תשנה ל

    alert(this.attributes['data-index'].value);
    

    או

    alert(this.dataset.index);
    

    תדווח אם זה עובד.

    ש
    ש
    ש.ב.ח.
    כתב ב נערך לאחרונה על ידי
    #5

    @dovid
    הראשון לא עובד כלל
    השני אותו דבר undefind

    dovidD תגובה 1 תגובה אחרונה
    0
    • ש ש.ב.ח.

      @dovid
      הראשון לא עובד כלל
      השני אותו דבר undefind

      dovidD
      dovidD
      dovid
      ניהול
      כתב ב נערך לאחרונה על ידי dovid
      #6

      אז ההשערה שלי הייתה נכונה.
      ההנחה של כל השאלה ("התכונה קיימת בוודאות ברכיב") לא נכונה.

      • מנטור אישי בתכנות והמסתעף – להתקדם לשלב הבא!
      • בכל נושא אפשר ליצור קשר dovid@tchumim.com
      ש תגובה 1 תגובה אחרונה
      0
      • dovidD dovid

        אז ההשערה שלי הייתה נכונה.
        ההנחה של כל השאלה ("התכונה קיימת בוודאות ברכיב") לא נכונה.

        ש
        ש
        ש.ב.ח.
        כתב ב נערך לאחרונה על ידי
        #7

        @dovid
        99b71a84-6705-488f-82f5-e21df2b96660-image.png

        תגובה 1 תגובה אחרונה
        0
        • dovidD
          dovidD
          dovid
          ניהול
          כתב ב נערך לאחרונה על ידי dovid
          #8

          הצילום מסך שלך לא אומר לי כלום. הוא גם מבוסס על הנחה (שהפונקציה מדברת על אותו אלמנט המצולם).

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

          • מנטור אישי בתכנות והמסתעף – להתקדם לשלב הבא!
          • בכל נושא אפשר ליצור קשר dovid@tchumim.com
          ש 2 תגובות תגובה אחרונה
          1
          • dovidD dovid

            הצילום מסך שלך לא אומר לי כלום. הוא גם מבוסס על הנחה (שהפונקציה מדברת על אותו אלמנט המצולם).

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

            ש
            ש
            ש.ב.ח.
            כתב ב נערך לאחרונה על ידי ש.ב.ח.
            #9

            @dovid
            ברור לי שככל הנראה משהו חסר... אני רק צריך מישהו שיצביע לי עליו.
            צירפתי את הקובץ עליו אני מנסה לבצע את ניסיונותי
            ניסיון.html

            בגדול אם אני זוכר טוב אני חושב שאתה מתחילת הדרך הדרכת אותי, ברכתי שלוחה... תודה רבה!

            תגובה 1 תגובה אחרונה
            0
            • dovidD dovid

              הצילום מסך שלך לא אומר לי כלום. הוא גם מבוסס על הנחה (שהפונקציה מדברת על אותו אלמנט המצולם).

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

              ש
              ש
              ש.ב.ח.
              כתב ב נערך לאחרונה על ידי
              #10

              @dovid
              זיהיתי את הבעיה.
              האלמנט המועבר הוא העוטף ולא הinput עצמו...
              תודה רבה
              כבר אנסה לפתור...

              תגובה 1 תגובה אחרונה
              2
              • dovidD
                dovidD
                dovid
                ניהול
                כתב ב נערך לאחרונה על ידי
                #11

                @ש-ב-ח בדיוק!
                אני מציע לך טיפ שיקל עליך את העבודה: במקום שתהיה שתקשר פונקציה כללית לאירועי השינוי של כלל הradio ובתוך הפונקציה תבדוק את ערך הdata-index,
                תוכל להזניק פונקציה אישית לכל אחד, שתקרא לפונקציה הכללית עם ארגומנט עם הID המתאים:

                input.on('change', function() { toListRegisterd(no); } );
                

                ולשנות את הפונקציה:

                function toListRegisterd(id){
                    alert(id);
                }
                

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

                טיפ נוסף: תעבור לangularjs.

                • מנטור אישי בתכנות והמסתעף – להתקדם לשלב הבא!
                • בכל נושא אפשר ליצור קשר dovid@tchumim.com
                ש תגובה 1 תגובה אחרונה
                1
                • dovidD dovid

                  @ש-ב-ח בדיוק!
                  אני מציע לך טיפ שיקל עליך את העבודה: במקום שתהיה שתקשר פונקציה כללית לאירועי השינוי של כלל הradio ובתוך הפונקציה תבדוק את ערך הdata-index,
                  תוכל להזניק פונקציה אישית לכל אחד, שתקרא לפונקציה הכללית עם ארגומנט עם הID המתאים:

                  input.on('change', function() { toListRegisterd(no); } );
                  

                  ולשנות את הפונקציה:

                  function toListRegisterd(id){
                      alert(id);
                  }
                  

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

                  טיפ נוסף: תעבור לangularjs.

                  ש
                  ש
                  ש.ב.ח.
                  כתב ב נערך לאחרונה על ידי
                  #12

                  @dovid אמר בלמה זה לא מצליח - JS:

                  טיפ נוסף: תעבור לangularjs.

                  לאט... כדי לעבור צריך קודם להכיר את הדירה הראשונה...
                  לפי מה שהבנתי אנגולר היא לא קלה אז למה לקפוץ ישר למים העמוקים?

                  dovidD תגובה 1 תגובה אחרונה
                  0
                  • ש ש.ב.ח.

                    @dovid אמר בלמה זה לא מצליח - JS:

                    טיפ נוסף: תעבור לangularjs.

                    לאט... כדי לעבור צריך קודם להכיר את הדירה הראשונה...
                    לפי מה שהבנתי אנגולר היא לא קלה אז למה לקפוץ ישר למים העמוקים?

                    dovidD
                    dovidD
                    dovid
                    ניהול
                    כתב ב נערך לאחרונה על ידי dovid
                    #13

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

                    נ.ב. שים לב שאנגולר בד"כ מתייחס לאנגולר 2+ שזה ממש מסובך, ואילו angularjs מתייחס לאנגולר 1 שזה ממש ספריה חמודה כמו jQuery.

                    • מנטור אישי בתכנות והמסתעף – להתקדם לשלב הבא!
                    • בכל נושא אפשר ליצור קשר dovid@tchumim.com
                    ש תגובה 1 תגובה אחרונה
                    2
                    • dovidD dovid

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

                      נ.ב. שים לב שאנגולר בד"כ מתייחס לאנגולר 2+ שזה ממש מסובך, ואילו angularjs מתייחס לאנגולר 1 שזה ממש ספריה חמודה כמו jQuery.

                      ש
                      ש
                      ש.ב.ח.
                      כתב ב נערך לאחרונה על ידי
                      #14

                      @dovid
                      אני שומע...
                      ננסה להכניס לתוכנית הלימודים העצמאים....

                      בכל מקרה כרגע השתמשתי כך, זה בסדר?

                      function toListRegisterd(e){
                        var selected = $(this.childNodes[1]).data('index');
                          alert(selected);
                       
                      }
                      
                      תגובה 1 תגובה אחרונה
                      0
                      • yossizY yossiz

                        @ש-ב-ח אם הבנתי נכון, פונקציית data של jquery לא בנוי לגמרי על מאפייני data של html.
                        עיין כאן: https://api.jquery.com/data/#data-html5 שאחרי הקריאה הראשונה ל-data על אלמנט כלשהו, לא תזוהו שינויים למאפייני data.

                        Since jQuery 1.4.3, data-* attributes are used to initialize jQuery data. An element's data-* attributes are retrieved the first time the data() method is invoked upon it, and then are no longer accessed or mutated (all values are stored internally by jQuery).

                        @יוסף-בן-שמעון אמר בלמה זה לא מצליח - JS:

                        אם זה מאירוע, אתה צריך לגשת ליעד של האירוע כך:

                        למה לא נכון להשתמש ב-this?
                        https://stackoverflow.com/questions/17665489/using-this-inside-an-event-handler

                        י
                        י
                        יוסף בן שמעון
                        כתב ב נערך לאחרונה על ידי
                        #15

                        @yossiz אמר בלמה זה לא מצליח - JS:

                        למה לא נכון להשתמש ב-this?
                        https://stackoverflow.com/questions/17665489/using-this-inside-an-event-handler

                        לא הכרתי, תודה רבה

                        תגובה 1 תגובה אחרונה
                        0

                        שלום! נראה שהשיחה הזו מעניינת אותך, אבל עדיין אין לך חשבון.

                        נמאס לכם לגלול בין אותם הפוסטים בכל ביקור? כשנרשמים לחשבון, תמיד תחזרו בדיוק למקום שבו הייתם קודם, ותוכלו לבחור לקבל התראות על תגובות חדשות (בין אם במייל, ובין אם בהתראת פוש). תוכלו גם לשמור סימניות ולפרגן ב-upvote לפוסטים כדי להביע הערכה לחברי קהילה אחרים.

                        בעזרת התרומה שלך, הפוסט הזה יכול להיות אפילו טוב יותר 💗

                        הרשמה התחברות
                        תגובה
                        • תגובה כנושא
                        התחברו כדי לפרסם תגובה
                        • מהישן לחדש
                        • מהחדש לישן
                        • הכי הרבה הצבעות


                        בא תתחבר לדף היומי!
                        • התחברות

                        • אין לך חשבון עדיין? הרשמה

                        • התחברו או הירשמו כדי לחפש.
                        • פוסט ראשון
                          פוסט אחרון
                        0
                        • דף הבית
                        • קטגוריות
                        • פוסטים אחרונים
                        • משתמשים
                        • חיפוש
                        • חוקי הפורום