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

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

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

js- תפיסת אלמנט והכנסתו לטופס

מתוזמן נעוץ נעול הועבר תכנות
11 פוסטים 2 כותבים 426 צפיות
  • מהישן לחדש
  • מהחדש לישן
  • הכי הרבה הצבעות
התחברו כדי לפרסם תגובה
נושא זה נמחק. רק משתמשים עם הרשאות מתאימות יוכלו לצפות בו.
  • ל מנותק
    ל מנותק
    לעזור לכולם
    כתב ב נערך לאחרונה על ידי לעזור לכולם
    #1

    שלום
    אני באמצע בניית אתר של מכירת אותיות בספר תורה
    יש לי דף שבה מוצג רשימת אותיות של פרשה X כאשר כל אות נמצא בתוך "כפתור"
    ולכל אות&כפתור יש id מיוחד
    כאשר המטרה היא שבלחיצה על כפתור תלקח ה id של האות ויוכנס בטופס
    ובלחיצה כפולה על כפתורגם כן תלקח ה id של האות וכך אדע לסמן בדאטה-בייס אילו אותיות תפוסות/סגורות לקנייה וכו'
    מה שקורה הוא שכתבתי את הקוד ולא מצאתי את הבעיה למה הוא באמת לא מאזין ומכניס את הנתונים לטופס
    (האמת שאני מאוד חלש כרגע ב javaa script כך שיתכן שזה שאלת תם או אפילו "שאינו יודע...")
    מצו"ב תמונות וקוד

    שדה הטופס:

        <form method="POST">
        <p>   <br><label> <input  id="from" name="from"></p></label>
        <p>   <br><label> <input  id="to"name="to"></p></label>
    
    

    כפתורי האותיות:
    (בשפת PHP)

    <button class=status title='$title' onclick='value1($row[Ot_ID])' dblclick='value2($row[Ot_ID])' id=$row[Ot_ID]><b>".$row['Ot_Name']."</button></b>"
    

    הפונקציות:

    <script>
    
      function vulue1(id1){
        var from = document.getElementById("from");
    from.innerHTML(id1);
      }
      function vulue2(id2){
        var to = document.getElementById("to");
    to.innerHTML(id2);
      }
    
      </script>
    
    

    וכך זה נראה באתר
    רשימת האותיות:
    רשימת אותיות.JPG

    דיבראנג.JPG

    yossizY תגובה 1 תגובה אחרונה
    1
    • yossizY מנותק
      yossizY מנותק
      yossiz
      השיב ללעזור לכולם ב נערך לאחרונה על ידי
      #2

      @לעזור-לכולם אני עוד לפני בדיקה מעמיקה יותר, האם זה לא פשוט בגלל שגיאת כתיב?
      vulue1 מול value1

      📧 יוסי@מייל.קום | 🌎 בלוג | ☕ קפה

      ל תגובה 1 תגובה אחרונה
      2
      • ל מנותק
        ל מנותק
        לעזור לכולם
        השיב לyossiz ב נערך לאחרונה על ידי
        #3

        @yossiz
        תודה אכן תקנתי את זה
        אבל זה עדיין לא מכניס את הפרטים לטופס

        yossizY תגובה 1 תגובה אחרונה
        0
        • yossizY מנותק
          yossizY מנותק
          yossiz
          השיב ללעזור לכולם ב נערך לאחרונה על ידי
          #4

          @לעזור-לכולם במקום:

          from.innerHTML(id1);
          

          תכתוב:

          from.value = id1;
          

          וכנ"ל לגבי to

          📧 יוסי@מייל.קום | 🌎 בלוג | ☕ קפה

          ל תגובה 1 תגובה אחרונה
          2
          • ל מנותק
            ל מנותק
            לעזור לכולם
            השיב לyossiz ב נערך לאחרונה על ידי
            #5

            @yossiz
            תודה על העזרה
            אבל זה עדיין לא מכניס לטופס

            yossizY תגובה 1 תגובה אחרונה
            0
            • yossizY מנותק
              yossizY מנותק
              yossiz
              השיב ללעזור לכולם ב נערך לאחרונה על ידי
              #6

              @לעזור-לכולם
              https://codepen.io/yossizahn/pen/PoQVBZL

              הקוד הזה עובד. עכשיו העבודה שלך הוא לבדוק מה שונה אצלך...

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

              אתה יודע לבדוק בקונסול של הדפדפן אם מופיע שגיאה?

              📧 יוסי@מייל.קום | 🌎 בלוג | ☕ קפה

              ל תגובה 1 תגובה אחרונה
              5
              • ל מנותק
                ל מנותק
                לעזור לכולם
                השיב לyossiz ב נערך לאחרונה על ידי לעזור לכולם
                #7

                @yossiz
                ברוך ה' זה עובד
                תודה לך @yossiz
                הסקריפט אכן היה בסוף הטופס
                אבל עכשיו זה מעדכן רק את השורה הראשונה גם בלחיצה כפולה
                כלומר הוא מזהה את הלחיצה הכפולה כלחיצה יחידה
                חשוב לציין הפעלת הפונקציה id2 על ידי הקונסול כן עובדת

                yossizY תגובה 1 תגובה אחרונה
                0
                • yossizY מנותק
                  yossizY מנותק
                  yossiz
                  השיב ללעזור לכולם ב נערך לאחרונה על ידי
                  #8

                  @לעזור-לכולם אם היית אומר שלחיצה כפולה מריץ גם את הפונקציה של לחיצה יחידה, הייתי מבין את הבעיה. ובאמת יש פה בעיה, כי איך הדפדפן יכול לנבא על הלחיצה הראשונה אם היא חלק מקליק כפול?
                  הפתרון הכי פשוט הוא להשתמש במשהו אחר, כגון קליק ימני או קונטרול+קליק.
                  אבל עכשיו שאתה אומר שזה מריץ רק את הפונקציה של קליק יחיד, כנראה שמשהו לא בסדר בקוד. בהעדר כח נבואה איני יכול לנבא מה הבעיה...

                  📧 יוסי@מייל.קום | 🌎 בלוג | ☕ קפה

                  ל 2 תגובות תגובה אחרונה
                  4
                  • ל מנותק
                    ל מנותק
                    לעזור לכולם
                    השיב לyossiz ב נערך לאחרונה על ידי
                    #9

                    @yossiz

                    @yossiz אמר בjs- תפיסת אלמנט והכנסתו לטופס:

                    הפתרון הכי פשוט הוא להשתמש במשהו אחר, כגון קליק ימני או קונטרול+קליק.

                    ניסיתי אכן לעשות עם קונטרול קליק ואז מה שקרה שאם לחצתי עם קונטרול קליק התמלא שתי השדות כי אכן היה קליק
                    אז ניסיתי לעשות אחד עם ALT+כליק ואחד עם קונטרול כליק ועשיו שניהם לא עובדים לי
                    מצו"ב קוד
                    הפונקציה:

                      function value(event,id){
                         var from = document.getElementById("from"); 
                         var to = document.getElementById("to");
                        if(event.altKey) {
                       
                    from.value = id;
                      }else if(event.ctrlKey) {
                      
                       
                    to.value = id;
                      }
                      }
                      </script>
                    
                    

                    HTML:

                      onkeydown='value(event,$row[Ot_ID])'>
                    
                    ל תגובה 1 תגובה אחרונה
                    0
                    • ל מנותק
                      ל מנותק
                      לעזור לכולם
                      השיב ללעזור לכולם ב נערך לאחרונה על ידי לעזור לכולם
                      #10

                      @לעזור-לכולם
                      ,הפתרון:
                      אי אפשר לקבוע פונקציה בשם value (עכ"פ בשילוב עם עוד שפות, אשמח למידע בנושא)
                      לאחר מעמד שינוי השם ברוב עם חזר הפונקציה לעבוד ברוך השם

                      תודה מיוחדת להרב @yossiz שעזר בכל כוחו תבורך מן השמים

                      צדיק תמיםצ yossizY 2 תגובות תגובה אחרונה
                      5
                      • dovidD dovid פיצל נושא זה ב
                      • ל מנותק
                        ל מנותק
                        לעזור לכולם
                        השיב לyossiz ב נערך לאחרונה על ידי
                        #11

                        @yossiz אמר בjs- תפיסת אלמנט והכנסתו לטופס:

                        @לעזור-לכולם אם היית אומר שלחיצה כפולה מריץ גם את הפונקציה של לחיצה יחידה, הייתי מבין את הבעיה. ובאמת יש פה בעיה, כי איך הדפדפן יכול לנבא על הלחיצה הראשונה אם היא חלק מקליק כפול?
                        הפתרון הכי פשוט הוא להשתמש במשהו אחר, כגון קליק ימני או קונטרול+קליק.
                        אבל עכשיו שאתה אומר שזה מריץ רק את הפונקציה של קליק יחיד, כנראה שמשהו לא בסדר בקוד. בהעדר כח נבואה איני יכול לנבא מה הבעיה...

                        לאחר מחשבה שנייה
                        הדרך הנכונה היא שגם את האות הראשונה וגם האחרונה יקבע על יד קליק יחידי
                        אלא מאי?
                        בפונקציה שמקבלת את הנתונים אני אשאל אותו ב if האם השדה from ריקה?
                        אם כן בבקשה ממך מלא את השדה בנתון ששלחתי לך ואם השדה כבר מאופפין עם value אז הכנס את הנתונים בשדה ששמו to

                        תגובה 1 תגובה אחרונה
                        2
                        • dovidD dovid העביר נושא זה מ-תכנות ב-
                        • ל לעזור לכולם התייחס לנושא זה ב

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

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

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