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

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

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

אנגולר 1 - Direcrive להמרת תאריך

מתוזמן נעוץ נעול הועבר תכנות
32 פוסטים 4 כותבים 2.7k צפיות
  • מהישן לחדש
  • מהחדש לישן
  • הכי הרבה הצבעות
התחברו כדי לפרסם תגובה
נושא זה נמחק. רק משתמשים עם הרשאות מתאימות יוכלו לצפות בו.
  • zvizviZ מנותק
    zvizviZ מנותק
    zvizvi
    השיב למנצפך ב נערך לאחרונה על ידי zvizvi
    #9

    @מנצפך אמר באנגולר 1 - Direcrive להמרת תאריך:

    @zvizvi איפה זה אמור להיות? בתוך Directive?

    במקום 2 השורות האלה:

        ngModelCtrl.$formatters.length = 0;
        ngModelCtrl.$parsers.length = 0;
    

    https://zvizvi.xyz

    תגובה 1 תגובה אחרונה
    0
    • dovidD מנותק
      dovidD מנותק
      dovid ניהול
      השיב למנצפך ב נערך לאחרונה על ידי dovid
      #10
      פוסט זה נמחק!
      מנצפךמ תגובה 1 תגובה אחרונה
      0
      • מנצפךמ מנותק
        מנצפךמ מנותק
        מנצפך
        השיב לdovid ב נערך לאחרונה על ידי
        #11

        @dovid אמר באנגולר 1 - Direcrive להמרת תאריך:

        משמה

        לא מצאתי את האשכול הקודם
        @zvizvi ניסיתי לעשות בלי להשתמש ב moment. בינתיים לא עובד.

         app.directive('dateFormat', function () {
        return {
            require: 'ngModel',
            link: function (scope, element, attr, ngModelCtrl) {
                ngModelCtrl.$formatters.unshift(function (a) {
                    if (ngModelCtrl.$modelValue) {
                     // var date = moment(ngModelCtrl.$modelValue);
                     // if (!date._isValid) {
                      //  return '';
                     // }
                     return new Date(ngModelCtrl.$modelValue);
                      //return date.format('DD/MM/YYYY');
                    }
                  });
            
                  ngModelCtrl.$parsers.unshift(function (viewValue) {
                    return new Date(viewValue);
                 /*   if (viewValue && moment(viewValue, 'DD/MM/YYYY')._isValid) {
                      return moment(viewValue, 'DD/MM/YYYY').format();
                    }*/
                  });
            }
        };
        

        מה לא טוב?

        zvizviZ dovidD 2 תגובות תגובה אחרונה
        0
        • zvizviZ מנותק
          zvizviZ מנותק
          zvizvi
          השיב למנצפך ב נערך לאחרונה על ידי zvizvi
          #12

          @מנצפך אמר באנגולר 1 - Direcrive להמרת תאריך:

          @dovid אמר באנגולר 1 - Direcrive להמרת תאריך:

          משמה

          לא מצאתי את האשכול הקודם
          @zvizvi ניסיתי לעשות בלי להשתמש ב moment. בינתיים לא עובד.

          אתה חייב לסנן החוצה ערכים שאינם תאריך, כי כשתעשה new date לערך שהוא לא תאריך - תקבל שגיאה.

          https://zvizvi.xyz

          מנצפךמ תגובה 1 תגובה אחרונה
          0
          • zvizviZ מנותק
            zvizviZ מנותק
            zvizvi
            כתב ב נערך לאחרונה על ידי
            #13

            שים את זה בHTML ויהיה לך moment.

            <script src="https://cdnjs.cloudflare.com/ajax/libs/moment.js/2.22.0/moment.min.js">
            

            https://zvizvi.xyz

            תגובה 1 תגובה אחרונה
            2
            • מנצפךמ מנותק
              מנצפךמ מנותק
              מנצפך
              השיב לzvizvi ב נערך לאחרונה על ידי
              #14

              @zvizvi מסכים איתך עקרונית. כרגע זה לא קריטי. קודם שיעבוד במה שיש תאריך.
              משום מה הפונקציות unshift לא מופעלת בכלל. אני שם בתוכן console.log והוא לא כותב.
              אני מריח שאני מפספס כאן משהו.

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

                @מנצפך אמר באנגולר 1 - Direcrive להמרת תאריך:

                @dovid אמר באנגולר 1 - Direcrive להמרת תאריך:

                משמה

                לא מצאתי את האשכול הקודם

                כשיהיה לי לך יותר כח אני יידבק ממך ויהיה לי כח לענות 🙂

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

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

                  תגובה 1 תגובה אחרונה
                  0
                  • zvizviZ מנותק
                    zvizviZ מנותק
                    zvizvi
                    כתב ב נערך לאחרונה על ידי zvizvi
                    #17

                    @מנצפך רשמת את הדיירקטיב בmodule? מכיר את המושג?

                    https://zvizvi.xyz

                    תגובה 1 תגובה אחרונה
                    0
                    • מנצפךמ מנותק
                      מנצפךמ מנותק
                      מנצפך
                      כתב ב נערך לאחרונה על ידי מנצפך
                      #18

                      @zvizvi נראה לי שכן. הפונקציה link עובדת היטב. (ניסיתי console.log).
                      אולי תלוי בגירסה (169)

                      תגובה 1 תגובה אחרונה
                      0
                      • מנצפךמ מנותק
                        מנצפךמ מנותק
                        מנצפך
                        כתב ב נערך לאחרונה על ידי מנצפך
                        #19

                        @zvizvi הבנתי מה הבעיה. בפתרון שלך הtype של ה input הוא text.
                        הדגשתי כאן שאני צריך type=date.
                        לזה זה לא מועיל (בינתיים).
                        אני לא כ"כ יודע איך זה עובד מבחינת אנגולר, משום מה הוא לא מריץ את ה unshift.
                        תודה @dovid בזכותך מצאתי את הפוסט הנ"ל.

                        תגובה 1 תגובה אחרונה
                        0
                        • zvizviZ מנותק
                          zvizviZ מנותק
                          zvizvi
                          כתב ב נערך לאחרונה על ידי
                          #20

                          צודק, כל זה מיועד עבור input text.
                          ועדיין אני לא מבין למה בינדינג רגיל לתאריך שקיבלת מהשרת לא עובד.

                          https://zvizvi.xyz

                          מנצפךמ dovidD 2 תגובות תגובה אחרונה
                          0
                          • מנצפךמ מנותק
                            מנצפךמ מנותק
                            מנצפך
                            השיב לzvizvi ב נערך לאחרונה על ידי מנצפך
                            #21

                            @zvizvi תראה פה:
                            http://plnkr.co/edit/b2AwltcRoc21hPZp8L1n
                            אני מנסה להציב סטרינג של תאריך בתוך input type=date.
                            זה לא עובד. אפילו אם עושים ל date ToString זה לא עובד.

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

                              @zvizvi אמר באנגולר 1 - Direcrive להמרת תאריך:

                              צודק, כל זה מיועד עבור input text.
                              ועדיין אני לא מבין למה בינדינג רגיל לתאריך שקיבלת מהשרת לא עובד.

                              @dovid אמר בעיצוב date ב JS + אנגולר:

                              הבעיה זה לא הפורמט. הבעיה היא שזה מגיע מהשרת כטקסט, וזה תמיד ככה.
                              שרת תמיד שולח טקסט, ואפילו אם זה פורמט JSON שהופך לאובייקטים, עדייi אין בJSON מושג ששמו תאריך.
                              לכן אתה מוכרח להשתמש בפונקציה, שבל זה לא יכול להיעשות בng-model שכן זה בינדינג דו כיווני - מה יקרה כשהמשתמש ישנה את הערך? אתה חייב להחזיק עותק של המשתנה שהוא בקוד יהיה מסוג תאריך.
                              אם אתה מוותר על הtype="data" אתה פותר את כל הבעיה, אבל כנראה תרצה להשתמש עם תוסף שיציג בורר תאריכים אחר מהמובנה של כרום (שמצריך type="date").

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

                                https://plnkr.co/edit/jx78Wu5GsFrmFKVTJZy0
                                אבל אני חושב שהכי טוב להשתמש עם בורר תאריכים של בוטסטראפ וכדומה.

                                מנצפךמ 2 תגובות תגובה אחרונה
                                2
                                • מנצפךמ מנותק
                                  מנצפךמ מנותק
                                  מנצפך
                                  השיב לdovid ב נערך לאחרונה על ידי
                                  #24

                                  @dovid תודה רבה! נראה פשוט וקל.
                                  האמת שאני מתכנן בהמשך להשתמש בבורר אחר, אבל אני לפני שלב העיצוב בכלל, אז רציתי פתרון זמני, ועל הדרך למדתי קצת את עניין ה Directive.

                                  תגובה 1 תגובה אחרונה
                                  0
                                  • מנצפךמ מנותק
                                    מנצפךמ מנותק
                                    מנצפך
                                    השיב לdovid ב נערך לאחרונה על ידי
                                    #25

                                    @dovid רציתי לעשות readonly
                                    אז עשיתי כאן:
                                    https://plnkr.co/edit/H9kkQCFIWHbk07WNfLG2?p=preview
                                    שיכתבו באטריביוט של האלמנט readonly=true
                                    ובטמפלט השתמשתי ב ng-readonly.
                                    השאלה אם אפשר לעשות את זה כמו ב Input רגיל. שרק כותבים readonly.
                                    בעצם השאלה שלי היא איך אפשר לכתוב אלמנט בלי =. זה נראה לי דירקטיב בתוך דיירקטיב. לא?
                                    דבר נוסף, אם אני עושה 2 דירקטיבים כאלו (כלומר אלמנט דירקטיב) הם לא משפיעים אחד על השני מיידית. מה הסיבה?

                                    zvizviZ dovidD 2 תגובות תגובה אחרונה
                                    0
                                    • zvizviZ מנותק
                                      zvizviZ מנותק
                                      zvizvi
                                      השיב למנצפך ב נערך לאחרונה על ידי
                                      #26

                                      @מנצפך אמר באנגולר 1 - Direcrive להמרת תאריך:

                                      @dovid רציתי לעשות readonly
                                      אז עשיתי כאן:
                                      https://plnkr.co/edit/H9kkQCFIWHbk07WNfLG2?p=preview
                                      שיכתבו באטריביוט של האלמנט readonly=true
                                      ובטמפלט השתמשתי ב ng-readonly.
                                      השאלה אם אפשר לעשות את זה כמו ב Input רגיל. שרק כותבים readonly.
                                      בעצם השאלה שלי היא איך אפשר לכתוב אלמנט בלי =. זה נראה לי דירקטיב בתוך דיירקטיב. לא?
                                      דבר נוסף, אם אני עושה 2 דירקטיבים כאלו (כלומר אלמנט דירקטיב) הם לא משפיעים אחד על השני מיידית. מה הסיבה?

                                      למה לעשות לזה דירקטיב שלם? למה לא תרשום בHTML :

                                      readonly="{{true || false}}"
                                      

                                      https://zvizvi.xyz

                                      מנצפךמ תגובה 1 תגובה אחרונה
                                      2
                                      • מנצפךמ מנותק
                                        מנצפךמ מנותק
                                        מנצפך
                                        השיב לzvizvi ב נערך לאחרונה על ידי
                                        #27

                                        @zvizvi אמר באנגולר 1 - Direcrive להמרת תאריך:

                                        readonly="{{true || false}}"

                                        איפה בדיוק לכתוב? לא הצלחתי.

                                        zvizviZ תגובה 1 תגובה אחרונה
                                        0
                                        • zvizviZ מנותק
                                          zvizviZ מנותק
                                          zvizvi
                                          השיב למנצפך ב נערך לאחרונה על ידי zvizvi
                                          #28

                                          @מנצפך אמר באנגולר 1 - Direcrive להמרת תאריך:

                                          @zvizvi אמר באנגולר 1 - Direcrive להמרת תאריך:

                                          readonly="{{true || false}}"

                                          איפה בדיוק לכתוב? לא הצלחתי.

                                             <input type="date" ng-model="chotamProfile.request_closedRoomExp" readonly="{{true}}" date-format/>
                                          

                                          https://zvizvi.xyz

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

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

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

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