نمایش نتایج: از شماره 1 تا 1 از مجموع 1
سپاس ها 1سپاس

موضوع: پیاده سازی تقویم شمسی در شیرپوینت با استفاده از جاوا اسکریپت ( قسمت سوم )

  
  1. #1
    نام حقيقي: ramin ahmadi

    عضو عادی
    تاریخ عضویت
    Feb 2009
    محل سکونت
    tehran
    نوشته
    38
    سپاسگزاری شده
    125
    سپاسگزاری کرده
    12

    پیاده سازی تقویم شمسی در شیرپوینت با استفاده از جاوا اسکریپت ( قسمت سوم )

    پیاده سازی تقویم شمسی در شیرپوینت با استفاده از جاوا اسکریپت ( قسمت سوم )

    با سلام خدمت دوستان گرامی و عرض پوزش بابت تاخیر در ارسال ادامه این سری از مقالات ،
    در قسمت قبلی یاد گرفتیم که چطور Date Picker پیشفرض شیرپوینت رو به شمسی تغییر بدیم اما مشکلی که داشتیم این بود که هنگام ذخیره کردن فرم پیغام خطایی دریافت میکردیم با این عنوان که شما میبایست تاریخی با فرمت میلادی وارد کنید.

    اما در این قسمت از سری مقالات تقویم شمسی میخواهیم ببینم چطور میتونیم تاریخ هایی که به صورت شمسی انتخاب شده اند رو به میلادی تغییر دهیم .

    اولین کاری که باید انجام بدیم اینه که بتونیم دکمه ذخیره رو در فرم پیدا کرده و اسکریپت مربوط به آن را تغییر دهیم که از طریق کد زیر میتوانید این کار را انجام دهید :

    کد:
    function findSaveButton()
    
    
    {
    
    
              var tags = document.getElementsByTagName('INPUT');
    
    
              var SaveButton;
    
    
              for (var i = 0; i < tags.length; i++)
    
    
              {
    
    
                       if(tagsIdea.id.indexOf('diidIOSaveItem') != -1)
    
    
                       SaveButton=tagsIdea;
    
    
              }
    
    
              return SaveButton;
    
    
    }
    حالا می بایست قبل از اینکه فرم ارسال بشه به سرور تاریخ ها رو به میلادی تغییر دهیم :

    کد:
    function changeDatesBeforeSave()
    
    
                       {
    
    
                                 changePersianDates();
    
    
                                 sButton = findSaveButton();
    
    
                                 if (!PreSaveItem()) {
    
    
                                          return false;
    
    
                                 }
    
    
                                
    
    
                                 WebForm_DoPostBackWithOptions(new WebForm_PostBackOptions(sButton.name, "", true, "", "", false, true));
    
    
                       }
    
    
     
    
    
                       function changePersianDates()
    
    
                       {
    
    
                                
    
    
                                 $(function() {
    
    
                                          var tags = document.getElementsByTagName('IMG');
    
    
                                          for (var i = 0; i < tags.length; i++)
    
    
                                          {
    
    
                                                     var tempString = tagsIdea.id;
    
    
                                                     if (tempString.indexOf('DatePickerImage') != -1)
    
    
                                                     {
    
    
                                                              var dtcontrolId = tempString.replace('DatePickerImage','');
    
    
                                                              var DateValue = document.getElementById(dtcontrolId).value;
    
    
                                                               if(DateValue)
    
    
                                                               {                                                      
    
    
                                                                       var splitter = DateValue.split('/');
    
    
                                                                      
    
    
                                                                       Year = new Number(splitter[0]);
    
    
                                                                       Month = new Number(splitter[1]);
    
    
                                                                       Day = new Number(splitter[2]);
    
    
                                                                       if(Year<1400)
    
    
                                                                       {
    
    
                                                                                 var j = persian_to_jd(Year,Month,Day);
    
    
                                                                                 perscal = jd_to_gregorian(j);
    
    
                                                                                 pyear = perscal[0];
    
    
                                                                                 pmonth = perscal[1];
    
    
                                                                                 pday = perscal[2];
    
    
                                                                                 if(Number(pmonth) < 10)
    
    
                                                                                 pmonth = "0" + pmonth;
    
    
     
    
    
                                                                                 if(Number(pday) < 10)
    
    
                                                                                 {
    
    
                                                                                          pday = "0" + pday;                                                           
    
    
                                                                                 }
    
    
                                                                                
    
    
                                                                                 var miladiDate = pmonth + "/" + pday + "/" + pyear;                                                                                                                                               
    
    
                                                                                 document.getElementById(dtcontrolId).value = miladiDate;
    
    
                                                                       }
    
    
                                                                      
    
    
                                                               }
    
    
                                                    }
    
    
                                          }
    
    
                                 });               
    
    
                      
    
    
                       }
    این تمام کاری هست که شما میبایست انجام دهید ، من آخرین ورژن از اسکریپت رو براتون آماده کردم که میتونید از اینجا دریافت کنید :

    http://www.mediafire.com/download/r1...atePickerV2.js

    و فقط کافیست کدهای درون این فایل رو همانند قسمت های قبلی در فایل masterpage وارد نمایید.

    موفق و پیروز باشید

    رامین احمدی




    موضوعات مشابه:
    ویرایش توسط rtech : 2013-07-12 در ساعت 11:36 AM
    Hakimi سپاسگزاری کرده است.

کلمات کلیدی در جستجوها:

تاریخ شمسی رامین احمدی قسمت دوم

تقویم شمسی شیرپوینت

دانلود تقویم شمسی شیرپوینت

مشکل تاریخ شمسی در شیرپوینت جاوا اسکریپت

کد JS برای تقویم شمسی در Sharepoint

http:forum.persiannetworks.comf91t59973.html

شیرپوینت نمایش تاریخ شمسی

برچسب برای این موضوع

مجوز های ارسال و ویرایش

  • شما نمی توانید موضوع جدید ارسال کنید
  • شما نمی توانید به پست ها پاسخ دهید
  • شما نمی توانید فایل پیوست ضمیمه کنید
  • شما نمی توانید پست های خود را ویرایش کنید
  •