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

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

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

סינון מותאם אישית בdatatables

מתוזמן נעוץ נעול הועבר תכנות
16 פוסטים 4 כותבים 352 צפיות
  • מהישן לחדש
  • מהחדש לישן
  • הכי הרבה הצבעות
התחברו כדי לפרסם תגובה
נושא זה נמחק. רק משתמשים עם הרשאות מתאימות יוכלו לצפות בו.
  • chagoldC מנותק
    chagoldC מנותק
    chagold
    כתב ב נערך לאחרונה על ידי
    #3

    כוונתך שאכניס ערך לשדה MAX או דוגמא באחד מאתרי הJS ONLINE?

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

      אין לי מושג אני אפילו לא בדקתי בלי קוד קשה לי לשחק.

      מנטור אישי למתכנתים (ולא רק) – להתקדם לשלב הבא!

      בכל נושא אפשר ליצור קשר dovid@tchumim.com

      chagoldC תגובה 1 תגובה אחרונה
      0
      • chagoldC מנותק
        chagoldC מנותק
        chagold
        השיב לdovid ב נערך לאחרונה על ידי chagold
        #5

        https://jsfiddle.net/m6zynquh/

        תודה

        dovidD תגובה 1 תגובה אחרונה
        0
        • dovidD מנותק
          dovidD מנותק
          dovid ניהול
          השיב לchagold ב נערך לאחרונה על ידי
          #6

          @chagold התאריכים בדוגמה שלך הם בפורמט לא סטנדרטי (yyyy/mm/dd).
          מפריע לך שהם יהיו בפורמט הקלאסי של dd/mm/yyyy (בדיוק הפוך)?
          נראה לי שזה יסדר את הבעיה בלי צורך בקוד נוסף.
          כמו"כ תעבור על דף זה https://datatables.net/blog/2014-12-18 זה נראה שזה נותן שכלולים מעניינים.

          מנטור אישי למתכנתים (ולא רק) – להתקדם לשלב הבא!

          בכל נושא אפשר ליצור קשר dovid@tchumim.com

          chagoldC yossizY 2 תגובות תגובה אחרונה
          2
          • chagoldC מנותק
            chagoldC מנותק
            chagold
            השיב לdovid ב נערך לאחרונה על ידי
            #7

            @dovid שיניתי את הפורמט
            https://jsfiddle.net/o9hcxLq2/

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

              @chagold
              אתה מצביע על העמודה הלא נכונה של הדאטה:
              במקום:

              var coldate = data[2] 
              

              תעשה:

              var coldate = data[4]
              

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

              תגובה 1 תגובה אחרונה
              3
              • chagoldC מנותק
                chagoldC מנותק
                chagold
                כתב ב נערך לאחרונה על ידי
                #9

                בדקתי שוב והתברר שהנתונים הוכנסו לד"ב בצורה שגויה (2003-10-19 במקום 03-10-2019)..
                תודה רבה

                תגובה 1 תגובה אחרונה
                1
                • chagoldC מנותק
                  chagoldC מנותק
                  chagold
                  כתב ב נערך לאחרונה על ידי chagold
                  #10

                  במקרה הזה: https://jsfiddle.net/d7zx80as/1/
                  כשאני שם תאריך לסינון, משום מה מוצגים 2732 רשומות מתוך 5,389.

                  221465f3-2d5c-4d07-a482-7707ac7f1b4a-image.png

                  תגובה 1 תגובה אחרונה
                  0
                  • yossizY מנותק
                    yossizY מנותק
                    yossiz
                    השיב לdovid ב נערך לאחרונה על ידי yossiz
                    #11

                    @dovid אמר בסינון מותאם אישית בdatatables:

                    @chagold התאריכים בדוגמה שלך הם בפורמט לא סטנדרטי (yyyy/mm/dd).
                    מפריע לך שהם יהיו בפורמט הקלאסי של dd/mm/yyyy (בדיוק הפוך)?
                    נראה לי שזה יסדר את הבעיה בלי צורך בקוד נוסף.

                    @dovid חבל שלא היית בוועדת ההיגוי של השפה... 🙂 כי גם אני סבור כמוך אבל למעשה נראה שזה בדיוק הפוך. yyyy/mm/dd ו-mm/dd/yyyy הם חוקיים, אבל dd/mm/yyyy לא חוקי...

                    var options = { year: 'numeric', month: 'long', day: 'numeric' }
                    
                    new Date('01/12/2020').toLocaleDateString('en-uk', options)
                    // "January 12, 2020"
                    new Date('12/01/2020').toLocaleDateString('en-uk', options)
                    // "December 1, 2020"
                    new Date('13/01/2020').toLocaleDateString('en-uk', options)
                    // "Invalid Date"
                    new Date('2020/12/01').toLocaleDateString('en-uk', options)
                    // "December 1, 2020"
                    

                    @chagold לעניינך, יוצא שיש לך מחרוזות תאריך ש-Date.parse לא יודעת לפרסר (כאשר ה"יום" - שמפורסר כחודש - הוא מ-13 ומעלה), לכן הם מחזירים NaN.
                    מכיון ש:

                    NaN <= NaN   //false
                    NaN <= 1     //false
                    1 <= NaN     //false
                    

                    לכן כל רשומה שה"יום" הוא מ-13+ מחזיר false.

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

                    dovidD תגובה 1 תגובה אחרונה
                    4
                    • dovidD מנותק
                      dovidD מנותק
                      dovid ניהול
                      השיב לyossiz ב נערך לאחרונה על ידי
                      #12

                      @yossiz אח"כ שמתי לב לזה, אבל כבר לא היה לי כח כי תוסכלתי מהמרחק בין התיעוד לבין התוצאות שעלו לי בנסיונות.
                      כנראה זה משוגה שלי אבל בפועל כל מה שהם כתבו לא עבהד לי, למשל הם כותבים שמרבית הפלאגינים הם אוטמטיים בגלל פלאגין של autodetect ובפועל כלום לא היה לי אוטומטי, כמו"כ הם שמים את קוד date-euro שלא מפסיק התבוננתי בו אבל הוא פשוט לא עבד לי, בקיצור לא היה לי "עצבים"...

                      מנטור אישי למתכנתים (ולא רק) – להתקדם לשלב הבא!

                      בכל נושא אפשר ליצור קשר dovid@tchumim.com

                      תגובה 1 תגובה אחרונה
                      3
                      • chagoldC מנותק
                        chagoldC מנותק
                        chagold
                        כתב ב נערך לאחרונה על ידי chagold
                        #13

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

                        או אולי - לא הבנתי (בכ"א במבט ראשון) איזה תנאי אני עושה לקלוט את הימים מעל 13 כדי להחזיר אותם לtrue?

                        @dovid ן @yossiz תודה עצומה על הנסיונות לפתור ולהתמודד לא רק עם קוד אלא גם עם שגיאות מעצבנות..

                        yossizY תגובה 1 תגובה אחרונה
                        0
                        • yossizY מנותק
                          yossizY מנותק
                          yossiz
                          השיב לchagold ב נערך לאחרונה על ידי yossiz
                          #14

                          @chagold אמר בסינון מותאם אישית בdatatables:

                          הבאגים שלי לא ניתנים לפיתרון

                          למה לא ניתנים לפיתרון?
                          הפתרון פשוט להביא את התאריך ל-Date.parse בפורמט הנכון.
                          אפשר להוסיף שורה זו להחליף את היום והחודש:

                          coldate = coldate.replace(/^(..\/)(..\/)/, '$2$1');
                          

                          עריכה: אני רואה שהשימוש ב-Date.parse הוא קצת בעייתי לשימוש בצורה חוצה דפדפנים כי אין כללים ברורים איך אמורים לפרסר את התאריך. הפורמט היחיד שמוגדר ב-ES5 הוא yyyy-mm-dd. יש ספרייה בשם moment.js עבור פרסור תאריכים.
                          עיין עוד:
                          https://stackoverflow.com/questions/51715259/what-are-valid-date-time-strings-in-javascript/
                          http://blog.dygraphs.com/2012/03/javascript-and-dates-what-mess.html

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

                          תגובה 1 תגובה אחרונה
                          2
                          • clickoneC מנותק
                            clickoneC מנותק
                            clickone
                            כתב ב נערך לאחרונה על ידי
                            #15

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

                            אין טסט כמו פרודקשן.

                            המייל שלי urivpn@gmail.com

                            chagoldC תגובה 1 תגובה אחרונה
                            1
                            • chagoldC מנותק
                              chagoldC מנותק
                              chagold
                              השיב לclickone ב נערך לאחרונה על ידי
                              #16

                              @clickone זה מה שעשיתי בסוף.

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

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

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

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