نمایش نتایج 1 تا 33 از 33

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

  1. #1

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

    در مجموعه مقالاتی که خدمت شما ارائه خواهم کرد در مورد پیاده سازی تقویم شمسی با استفاده از امکانات جاوا اسکریپت و Jquery صحبت خواهد شد و به شما آموزش خواهم داد چگونه بدون استفاده از کدهای سمت سرور بتوانید تقویم شمسی را در شیرپوینت مورد استفاده قرار دهید ، این روش ضعف هایی هم دارد ولی به هر حال میتواند کمک زیادی به شما در یادگیری و استفاده از تقویم شمسی داشته باشد .

    تغییر تاریخ ها در نمای لیست

    در این بخش از مقاله قصد داریم تاریخ هایی که در نمای یک لیست یا کتابخانه اسناد وجود دارد را به شمسی تبدیل نماییم ، در این مثال تقویم سایت را می بایست بر روی تقویم میلادی قرار دهید ، اگر در نمای لیست هایتان ستون هایی از نوع تاریخ داشته باشید ، صفحه ای همچون شکل زیر را مشاهده خواهید نمود :


    همانطور که مشاهده میکنید در این مثال که یک لیست از نوع وظایف را نمایش می دهد دو ستون به نامه های تاریخ شروع و تاریخ انجام وجود دارد که تاریخ های میلادی در این نما کاملا مشخص هستند.

    اگر نگاهی به سورس صفحه داشته باشید خواهید دید که هر یک از سطرهای این نما که به صورت جدول ذخیره شده اند دارای TD هایی هستند که مقدار Class آن ها برابر ms-vb2 میباشد .

    اگر بخواهیم مقادیر این تاریخ ها رو تغییر دهیم نیاز داریم یک Loop ساده بین تمام تگ های TD این صفحه ایجاد کرده و تاریخ ها رو تشخیص و تغییر دهیم .

    برای اینکه این کد قابل دسترسی در تمام لیست ها باشد ، ابتدا شیرپوینت دیزاینر را باز کرده و Master Page پیش فرض سایت را در حالت ویرایش قرار دهید و درست قبل از بسته شدن تگ Body ( مقدار </body> را جستجو کنید ) کد های زیر را وارد نمایید.


    <script type="text/javascript">

    // متغیر های مورد نیاز

    var Day;

    var Month;

    var Year;

    var pday;

    var pmonth;

    var pyear;



    // الگوی تشخیص مقادیر تاریخ

    var RegExPattern = "\\d{4}\\/\\d{2}\\/\\d{2}";



    // دریافت تمام تگ های تی دی در صفحه

    var tags = document.getElementsByTagName('TD');

    for (var i = 0; i < tags.length; i++)

    {

    // دریافت مقدار کلاس تگ

    var TdClassName = tags[i].className;

    // چک کردن مقدار

    if (TdClassName .indexOf('ms-vb2') != -1)

    {

    // ذخیره مقدار درون تگ

    dateValue = tags[i].innerText;

    var regx = new RegExp(RegExPattern, "g");

    // چک کردن اینکه آیا مقدار درون تگ از نوع تاریخ می باشد یا خیر

    if (regx.test(dateValue))

    {



    Year = new Number(dateValue.substring(0, 4));

    Month = new Number(dateValue.substring(5, 7));

    Day = new Number(dateValue.substring(8, 10));



    // تبدیل تاریخ میلادی به شمسی

    var j = gregorian_to_jd(Year,Month,Day);

    perscal = jd_to_persian(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 shamsiDate = pyear + "/" + pmonth + "/" + pday;



    // جایگذاری مقدار تاریخ میلادی با شمسی

    tags[i].innerText = shamsiDate;

    }



    }

    }



    // توابع تبدیل تاریخ

    var GREGORIAN_EPOCH = 1721425.5;

    function leap_gregorian(year) {

    return ((year % 4) == 0) &&

    (!(((year % 100) == 0) && ((year % 400) != 0)));

    }





    function gregorian_to_jd(year, month, day) {

    return (GREGORIAN_EPOCH - 1) +

    (365 * (year - 1)) +

    Math.floor((year - 1) / 4) +

    (-Math.floor((year - 1) / 100)) +

    Math.floor((year - 1) / 400) +

    Math.floor((((367 * month) - 362) / 12) +

    ((month <= 2) ? 0 :

    (leap_gregorian(year) ? -1 : -2)

    ) +

    day);

    }



    function jd_to_persian(jd)

    {

    var year, month, day, depoch, cycle, cyear, ycycle,

    aux1, aux2, yday;





    jd = Math.floor(jd) + 0.5;



    depoch = jd - persian_to_jd(475, 1, 1);

    cycle = Math.floor(depoch / 1029983);

    cyear = mod(depoch, 1029983);

    if (cyear == 1029982) {

    ycycle = 2820;

    } else {

    aux1 = Math.floor(cyear / 366);

    aux2 = mod(cyear, 366);

    ycycle = Math.floor(((2134 * aux1) + (2816 * aux2) + 2815) / 1028522) +

    aux1 + 1;

    }

    year = ycycle + (2820 * cycle) + 474;

    if (year <= 0) {

    year--;

    }

    yday = (jd - persian_to_jd(year, 1, 1)) + 1;

    month = (yday <= 186) ? Math.ceil(yday / 31) : Math.ceil((yday - 6) / 30);

    day = (jd - persian_to_jd(year, month, 1)) + 1;

    return new Array(year, month, day);

    }

    </script>

    همانطور که میدانید در جاوا اسکریپت قابلیت استفاده از regular expression وجود دارد ، ما الگویی را برای تشخیص تاریخ تعریف نمودیم و سپس با استفاده از متد getElementsByTagName مجموعه ای از المنت های TD را در متغیری ذخیره نمودیم . سپس با یک Loop تک به تک تگ ها را چک نمودیم ، برای اینکه کارایی بالاتر رود و تگ های نا مربوط حذف گردند ما یک شرط در اینجا قرار دادیم تا فقط تگ هایی که نام کلاس آن ها ms-vb2 می باشد را مورد بررسی قرار دهد .
    سپس مقدار داخلی تگ را در متغیری ذخیره و با متد regx.test چک خواهیم کرد که آیا مقدار تگ از نوع تاریخ است یا خیر ، اگر مقدار از نوع تاریخ باشد با استفاده از توابع تبدیل تاریخ ها ، تاریخ میلادی را به تاریخ شمسی تبدیل و مقدار جدید را جایگزین مقدار قبلی می نماییم .

    اگر فایل را ذخیره نمایید و صفحه را مجدد بارگذاری کنید ، تاریخ ها به شکل زیر تغییر خواهند نمود :

    به این شکل در اولین گام تاریخ های میلادی در تمام لیست ها و مخازن اسناد شما به تاریخ شمسی تبدیل شدند !
    فکر میکنم هیجان زده شده اید برای تغییر قسمت های دیگر ، مثل لیست های از نوع تقویم و یا Date Picker شیرپوینت . برای شروع همین تمرین را انجام دهید ، در قسمت بعدی به تغییر Date Picker و نحوه ذخیره تاریخ های شمسی خواهیم پرداخت .
    امیدوارم که این مقاله برای شما مورد استفاده قرار گرفته باشد .

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

    رامین احمدی
    آخرین ویرایش به وسیله rtech : شنبه 24 فروردین 1392 در 23:36 عصر

  2. #2

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

    دستتون درد نکنه واقعا...کسی قدر این کدهارو نمیدونه فکر کنم...به هر حال من باید ارادتمو میرسوندم خدمتتون

  3. #3

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

    ببینید،مستر پیج دیفالت من رو حالت v4 تنظیم شده،که متاسفانه اصلا این گزینه ی "ms-vb2" رو نداره داخلش...
    نه تنها اون نداره،بلکه هیچکدوم از مستر پیج هام همچین چیزی رو ننوشته داخلش(نه minimal و
    نه default master)

    ینی 4-5 ساعت داشتم میگشتم دنبالش

  4. #4

    Unhappy نقل قول: پیاده سازی تقویم شمسی در شیرپوینت با استفاده از جاوا اسکریپت

    از کد جاوا اسکریپتش مطمئنید؟من مستر پیجمو باز کردم و کد رو قبل از تگ بادی کپی کردم و هیچ اتفاقی رخ نداد...

  5. #5

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

    شما نباید به دنبال ms-vb2 بگردید
    فایل v4 رو باز کنید به انتهای آن رفته و قبل از خط زیر کدها رو وارد کنید :


    </body>

  6. #6

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

    نشد هر کار کردم....همچنان میلادی نشون میده.... اینم عکسشUntitled.jpg

    <%@Master language="C#‎"%>
    <%@ Register Tagprefix="SharePoint" Namespace="Microsoft.SharePoint.WebControls" Assembly="Microsoft.SharePoint, Version=14.0.0.0, Culture=neutral, PublicKeyToken=71e9bce111e9429c" %> <%@ Register Tagprefix="Utilities" Namespace="Microsoft.SharePoint.Utilities" Assembly="Microsoft.SharePoint, Version=14.0.0.0, Culture=neutral, PublicKeyToken=71e9bce111e9429c" %> <%@ Import Namespace="Microsoft.SharePoint" %> <%@ Assembly Name="Microsoft.Web.CommandUI, Version=14.0.0.0, Culture=neutral, PublicKeyToken=71e9bce111e9429c" %>
    <%@ Import Namespace="Microsoft.SharePoint.ApplicationPages" %>
    <%@ Register Tagprefix="WebPartPages" Namespace="Microsoft.SharePoint.WebPartPages" Assembly="Microsoft.SharePoint, Version=14.0.0.0, Culture=neutral, PublicKeyToken=71e9bce111e9429c" %>
    <%@ Register TagPrefix="wssuc" TagName="Welcome" src="~/_controltemplates/Welcome.ascx" %>
    <%@ Register TagPrefix="wssuc" TagName="MUISelector" src="~/_controltemplates/MUISelector.ascx" %>
    <%@ Register TagPrefix="wssuc" TagName="DesignModeConsole" src="~/_controltemplates/DesignModeConsole.ascx" %>
    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
    <html lang="<%$Resources:wss,language_value%>" dir="<%$Resources:wss,multipages_direction_dir_val ue%>" runat="server" xmlns:o="urn:schemas-microsoft-com:office:office" __expr-val-dir="rtl">
    <head runat="server">
    <meta http-equiv="X-UA-Compatible" content="IE=8"/>
    <meta name="GENERATOR" content="Microsoft SharePoint"/>
    <meta name="progid" content="SharePoint.WebPartPage.Document"/>
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
    <meta http-equiv="Expires" content="0"/>
    <SharePoint:RobotsMetaTag runat="server"/>
    <title id="onetidTitle"><asp:ContentPlaceHolder id="PlaceHolderPageTitle" runat="server"/></title>
    <SharePoint:CssLink runat="server" Version="4"/>
    <SharePoint:Theme runat="server"/>
    <SharePoint:ULSClientConfig runat="server"/>
    <script type="text/javascript">
    PermissionsString="ManageLists"
    PermissionMode="Any"
    VisibilityFeatureId="00BFEA71-E717-4E80-AA17-D0C71B360101" />
    <SharePoint:MenuItemTemplate runat="server" id="MenuItem_CreateSite"
    Text="<%$Resources:wss,siteactions_createsite%>"
    Description="<%$Resources:wss,siteactions_createsi tedesc%>"
    ImageUrl="/_layouts/images/newweb32.png"
    MenuGroupId="200"
    Sequence="230"
    UseShortId="true"
    ClientOnClickScriptContainingPrefixedUrl="if (LaunchCreateHandler('Site')) { STSNavigate('~site/_layouts/newsbweb.aspx') }"
    </div>
    </Template_Controls>
    </SharePoint:DelegateControl>
    </div>
    </Sharepoint:SPNavigationManager>
    </ContentTemplate>
    </SharePoint:UIVersionedContent>
    <Sharepoint:UIVersionedContent runat="server" UIVersion="4">
    <ContentTemplate>
    <Sharepoint:SPNavigationManager
    id="TreeViewNavigationManagerV4"
    runat="server"
    ContainedControl="TreeView"
    CssClass="s4-treeView"
    >
    <SharePoint:SPLinkButton runat="server" NavigateUrl="~site/_layouts/viewlsts.aspx" id="idNavLinkSiteHierarchyV4" Text="<%$Resources:wss,treeview_header%>" accesskey="<%$Resources:wss,quiklnch_allcontent_AK %>" CssClass="s4-qlheader" />
    <div class="ms-treeviewouter">
    <SharePoint:DelegateControl runat="server" ControlId="TreeViewAndDataSource">
    <Template_Controls>
    <SharePoint:SPHierarchyDataSourceControl
    runat="server"
    id="TreeViewDataSourceV4"
    RootContextObject="Web"
    IncludeDiscussionFolders="true"
    />
    <SharePoint:SPRememberScroll runat="server" id="TreeViewRememberScrollV4" onscroll="javascript:_spRecordScrollPositions(this );" style="overflow: auto;height: 400px;width: 155px; ">
    <Sharepoint:SPTreeView
    id="WebTreeViewV4"
    runat="server"
    ShowLines="false"
    DataSourceId="TreeViewDataSourceV4"
    ExpandDepth="0"
    SelectedNodeStyle-CssClass="ms-tvselected"
    NodeStyle-CssClass="ms-navitem"
    SkipLinkText=""
    NodeIndent="12"
    ExpandImageUrl="/_layouts/images/tvclosed.png"
    ExpandImageUrlRtl="/_layouts/images/tvclosedrtl.png"
    CollapseImageUrl="/_layouts/images/tvopen.png"
    CollapseImageUrlRtl="/_layouts/images/tvopenrtl.png"
    NoExpandImageUrl="/_layouts/images/tvblank.gif"
    >
    </Sharepoint:SPTreeView>
    </Sharepoint:SPRememberScroll>
    </Template_Controls>
    </SharePoint:DelegateControl>
    </div>
    </Sharepoint:SPNavigationManager>
    </ContentTemplate>
    </SharePoint:UIVersionedContent>
    <asp:ContentPlaceHolder id="PlaceHolderQuickLaunchBottom" runat="server">
    <SharePoint:UIVersionedContent UIVersion="3" runat="server" id="PlaceHolderQuickLaunchBottomV3">
    <ContentTemplate>
    <table width="100%" cellpadding="0" cellspacing="0" border="0" class="s4-die">
    <tbody>
    <tr><td>
    <table class="ms-recyclebin" width="100%" cellpadding="0" cellspacing="0" border="0">
    <tbody>
    <tr><td nowrap="nowrap">
    <SharePoint:SPLinkButton runat="server" NavigateUrl="~site/_layouts/recyclebin.aspx" id="v3idNavLinkRecycleBin" ImageUrl="/_layouts/images/recycbin.gif" Text="<%$Resources:wss,StsDefault_RecycleBin%>" PermissionsString="DeleteListItems" />
    </td></tr>
    </table>
    </td></tr>
    </table>
    </ContentTemplate>
    </SharePoint:UIVersionedContent>
    <SharePoint:UIVersionedContent UIVersion="4" runat="server" id="PlaceHolderQuickLaunchBottomV4">
    <ContentTemplate>
    <ul class="s4-specialNavLinkList">
    <li>
    <SharePoint:ClusteredSPLinkButton
    runat="server"
    NavigateUrl="~site/_layouts/recyclebin.aspx"
    ImageClass="s4-specialNavIcon"
    ImageUrl="/_layouts/images/fgimg.png"
    ImageWidth=16
    ImageHeight=16
    OffsetX=0
    OffsetY=428
    id="idNavLinkRecycleBin"
    Text="<%$Resources:wss,StsDefault_RecycleBin%>"
    CssClass="s4-rcycl"
    PermissionsString="DeleteListItems" />
    </li>
    <li>
    <SharePoint:ClusteredSPLinkButton
    id="idNavLinkViewAllV4"
    runat="server"
    PermissionsString="ViewFormPages"
    NavigateUrl="~site/_layouts/viewlsts.aspx"
    ImageClass="s4-specialNavIcon"
    ImageUrl="/_layouts/images/fgimg.png"
    ImageWidth=16
    ImageHeight=16
    OffsetX=0
    OffsetY=0
    Text="<%$Resources:wss,quiklnch_allcontent_short%> "
    accesskey="<%$Resources:wss,quiklnch_allcontent_AK %>"/>
    </li>
    </ul>
    </ContentTemplate>
    </SharePoint:UIVersionedContent>
    </asp:ContentPlaceHolder>
    </div>
    </div>
    </asp:ContentPlaceHolder>
    </div>
    </div>
    <div class="s4-ca s4-ca-dlgNoRibbon" id="MSO_ContentTable">
    <div class="s4-die">
    <asp:ContentPlaceHolder id="PlaceHolderPageImage" runat="server" Visible="false"/>
    <asp:ContentPlaceHolder id="PlaceHolderTitleLeftBorder" runat="server" Visible="false">
    </asp:ContentPlaceHolder>
    <div id="onetidPageTitleAreaFrame" class='ms-pagetitleareaframe s4-pagetitle'></div>
    <asp:ContentPlaceHolder id="PlaceHolderMiniConsole" runat="server" Visible="false"/>
    <span class="s4-die">
    <asp:ContentPlaceHolder id="PlaceHolderTitleRightMargin" runat="server" Visible="false"/>
    </span>
    <asp:ContentPlaceHolder id="PlaceHolderTitleAreaSeparator" runat="server" Visible="false"/>
    <asp:ContentPlaceHolder id="PlaceHolderNavSpacer" runat="server" Visible="false"><img src="/_layouts/images/blank.gif" width='138' height='1' alt="" /></asp:ContentPlaceholder>
    <asp:ContentPlaceHolder id="PlaceHolderLeftNavBarBorder" runat="server" Visible="false"></asp:ContentPlaceHolder>
    <asp:ContentPlaceHolder id="PlaceHolderBodyLeftBorder" runat="server" Visible="false">
    </asp:ContentPlaceHolder>
    </div>
    <SharePoint:VersionedPlaceHolder UIVersion="3" ID="DesignModeConsoleV3" runat="server">
    <asp:ContentPlaceHolder id="WSSDesignConsole" runat="server">
    <wssuc:DesignModeConsole id="IdDesignModeConsole" runat="server" />
    </asp:ContentPlaceHolder>
    </SharePoint:VersionedPlaceHolder>
    <div class='s4-ba'><div class='ms-bodyareacell'>
    <div id="MSO_ContentDiv" runat="server">
    <a name="mainContent"></a>
    <asp:ContentPlaceHolder id="PlaceHolderMain" runat="server">
    </asp:ContentPlaceHolder>
    </div>
    </div></div>
    <div class="s4-die">
    <asp:ContentPlaceHolder id="PlaceHolderBodyRightMargin" runat="server">
    </asp:ContentPlaceHolder>
    </div>
    </div>
    </div>
    <SharePoint:DeveloperDashboard runat="server"/>
    </div>
    </div>
    <asp:ContentPlaceHolder id="PlaceHolderFormDigest" runat="server">
    <SharePoint:FormDigest runat="server"/>
    </asp:ContentPlaceHolder>
    <input type="text" name="__spText1" title="text" style="display:none;" />
    <input type="text" name="__spText2" title="text" style="display:none;" />
    </form>
    <asp:ContentPlaceHolder id="PlaceHolderUtilityContent" runat="server"/>
    <SharePoint:WarnOnUnsupportedBrowsers runat="server"/>
    <script type="text/javascript">

    // متغیر های مورد نیاز

    var Day;

    var Month;

    var Year;

    var pday;

    var pmonth;

    var pyear;



    // الگوی تشخیص مقادیر تاریخ

    var RegExPattern = "\\d{4}\\/\\d{2}\\/\\d{2}";



    // دریافت تمام تگ های تی دی در صفحه

    var tags = document.getElementsByTagName('TD');

    for (var i = 0; i < tags.length; i++)

    {

    // دریافت مقدار کلاس تگ

    var TdClassName = tags[i].className;

    // چک کردن مقدار

    if (TdClassName .indexOf('ms-vb2') != -1)

    {

    // ذخیره مقدار درون تگ

    dateValue = tags[i].innerText;

    var regx = new RegExp(RegExPattern, "g");

    // چک کردن اینکه آیا مقدار درون تگ از نوع تاریخ می باشد یا خیر

    if (regx.test(dateValue))

    {



    Year = new Number(dateValue.substring(0, 4));

    Month = new Number(dateValue.substring(5, 7));

    Day = new Number(dateValue.substring(8, 10));



    // تبدیل تاریخ میلادی به شمسی

    var j = gregorian_to_jd(Year,Month,Day);

    perscal = jd_to_persian(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 shamsiDate = pyear + "/" + pmonth + "/" + pday;



    // جایگذاری مقدار تاریخ میلادی با شمسی

    tags[i].innerText = shamsiDate;

    }



    }

    }



    // توابع تبدیل تاریخ

    var GREGORIAN_EPOCH = 1721425.5;

    function leap_gregorian(year) {

    return ((year % 4) == 0) &&

    (!(((year % 100) == 0) && ((year % 400) != 0)));

    }





    function gregorian_to_jd(year, month, day) {

    return (GREGORIAN_EPOCH - 1) +

    (365 * (year - 1)) +

    Math.floor((year - 1) / 4) +

    (-Math.floor((year - 1) / 100)) +

    Math.floor((year - 1) / 400) +

    Math.floor((((367 * month) - 362) / 12) +

    ((month <= 2) ? 0 :

    (leap_gregorian(year) ? -1 : -2)

    ) +

    day);

    }



    function jd_to_persian(jd)

    {

    var year, month, day, depoch, cycle, cyear, ycycle,

    aux1, aux2, yday;





    jd = Math.floor(jd) + 0.5;



    depoch = jd - persian_to_jd(475, 1, 1);

    cycle = Math.floor(depoch / 1029983);

    cyear = mod(depoch, 1029983);

    if (cyear == 1029982) {

    ycycle = 2820;

    } else {

    aux1 = Math.floor(cyear / 366);

    aux2 = mod(cyear, 366);

    ycycle = Math.floor(((2134 * aux1) + (2816 * aux2) + 2815) / 1028522) +

    aux1 + 1;

    }

    year = ycycle + (2820 * cycle) + 474;

    if (year <= 0) {

    year--;

    }

    yday = (jd - persian_to_jd(year, 1, 1)) + 1;

    month = (yday <= 186) ? Math.ceil(yday / 31) : Math.ceil((yday - 6) / 30);

    day = (jd - persian_to_jd(year, month, 1)) + 1;

    return new Array(year, month, day);

    }

    </script>
    </body>

    </html>



  7. #7

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

    در مرورگرهای غیر از فایرفاکس چک کنید مثل اینترنت اکسپلورر یا کروم

  8. #8

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

    با اکسپلورر چک کردم...ولی جواب نداد....میدونید : مقتی مینویسم مثلا (به صفحه خوش آمدید )alert ،درست جواب میده...یعنی پیغامو نمایش میده ولی این کده کار نمیکنه...نمدونم چرا؟؟؟؟خودمم موندم

  9. #9

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

    کد innerText در فایرفاکس کار نمیکنه و باید بجاش از textContent استفاده کرد ، من کد نهایی رو که در فایرفاکس هم جواب میده اینجا میزارم تست کنید :

    <script type="text/javascript">

    // متغیر های مورد نیاز
    var Day;
    var Month;
    var Year;
    var pday;
    var pmonth;
    var pyear;

    // الگوی تشخیص مقادیر تاریخ
    var RegExPattern = "\\d{4}\\/\\d{2}\\/\\d{2}";

    // دریافت تمام تگ های تی دی در صفحه
    var tags = document.getElementsByTagName('TD');
    for (var i = 0; i < tags.length; i++)
    {
    // دریافت مقدار کلاس تگ
    var TdClassName = tags[i].className;

    // چک کردن مقدار
    if (TdClassName .indexOf('ms-vb2') != -1)
    {
    // ذخیره مقدار درون تگ
    if(document.all){
    dateValue = tags[i].innerText;
    } else{
    dateValue = tags[i].textContent;
    }

    var regx = new RegExp(RegExPattern, "g");

    // چک کردن اینکه آیا مقدار درون تگ از نوع تاریخ می باشد یا خیر
    if (regx.test(dateValue))
    {

    Year = new Number(dateValue.substring(0, 4));
    Month = new Number(dateValue.substring(5, 7));
    Day = new Number(dateValue.substring(8, 10));

    // تبدیل تاریخ میلادی به شمسی
    var j = gregorian_to_jd(Year,Month,Day);
    perscal = jd_to_persian(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 shamsiDate = pyear + "/" + pmonth + "/" + pday;

    // جایگذاری مقدار تاریخ میلادی با شمسی
    if(document.all){
    tags[i].innerText = shamsiDate;
    } else{
    tags[i].textContent = shamsiDate;
    }

    }

    }
    }
    changeDatePickerToPersian();
    // تغییر پیکر تاریخ
    function changeDatePickerToPersian()
    {
    $(function() {
    var tags = document.getElementsByTagName('IMG');
    for (var i = 0; i < tags.length; i++)
    {
    var tempString = tags[i].id;
    if (tempString.indexOf('DatePickerImage') != -1){
    document.getElementById(tempString).style.display = 'none';
    var dtcontrolId = tempString.replace('DatePickerImage','');
    var DateValue = document.getElementById(dtcontrolId).value;
    if(DateValue)
    {
    Year = new Number(DateValue.substring(0, 4));
    Month = new Number(DateValue.substring(5, 7));
    Day = new Number(DateValue.substring(8, 10));
    if(Year > 2000)
    {
    // تبدیل تاریخ میلادی به شمسی
    var j = gregorian_to_jd(Year,Month,Day);
    perscal = jd_to_persian(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 shamsiDate = pyear + "/" + pmonth + "/" + pday;

    // جایگذاری مقدار تاریخ میلادی با شمسی
    document.getElementById(dtcontrolId).value = shamsiDate;
    }
    }
    $("#" + dtcontrolId).datepicker({showOn: 'button',buttonImage: '/_layouts/images/calendar.gif',buttonImageOnly: true});
    }
    }
    });

    }
    // توابع تبدیل تاریخ
    var GREGORIAN_EPOCH = 1721425.5;
    function leap_gregorian(year) {
    return ((year % 4) == 0) &&
    (!(((year % 100) == 0) && ((year % 400) != 0)));
    }


    function gregorian_to_jd(year, month, day) {
    return (GREGORIAN_EPOCH - 1) +
    (365 * (year - 1)) +
    Math.floor((year - 1) / 4) +
    (-Math.floor((year - 1) / 100)) +
    Math.floor((year - 1) / 400) +
    Math.floor((((367 * month) - 362) / 12) +
    ((month <= 2) ? 0 :
    (leap_gregorian(year) ? -1 : -2)
    ) +
    day);
    }

    function jd_to_persian(jd)
    {
    var year, month, day, depoch, cycle, cyear, ycycle,
    aux1, aux2, yday;


    jd = Math.floor(jd) + 0.5;

    depoch = jd - persian_to_jd(475, 1, 1);
    cycle = Math.floor(depoch / 1029983);
    cyear = mod(depoch, 1029983);
    if (cyear == 1029982) {
    ycycle = 2820;
    } else {
    aux1 = Math.floor(cyear / 366);
    aux2 = mod(cyear, 366);
    ycycle = Math.floor(((2134 * aux1) + (2816 * aux2) + 2815) / 1028522) +
    aux1 + 1;
    }
    year = ycycle + (2820 * cycle) + 474;
    if (year <= 0) {
    year--;
    }
    yday = (jd - persian_to_jd(year, 1, 1)) + 1;
    month = (yday <= 186) ? Math.ceil(yday / 31) : Math.ceil((yday - 6) / 30);
    day = (jd - persian_to_jd(year, month, 1)) + 1;
    return new Array(year, month, day);
    }



    </script>

  10. #10

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

    نشد که نشد :( ...دستتون درد نکنه تا این موقع شب کمک کردید...یه برنامه نویس خوب هیچوقت خسته نمیشه :)...فردا درستش میکنم :)

  11. #11

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

    رو چند سرور این کد تست شده و جواب داده احتمالا یه جای کار رو اشتباه انجام میدید ، مطمئنا میتونید درستش کنید
    موفق باشید

  12. #12

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

    یه نکته ای: این کد شما هیچوقت وارد IF دوم نمیشه...

    if (TdClassName .indexOf('ms-vb2') != -1)
    {
    // ذخیره مقدار درون تگ
    alert("s111");
    dateValue = tags[i].textContent;


    var regx = new RegExp(RegExPattern, "g");

    // چک کردن اینکه آیا مقدار درون تگ از نوع تاریخ می باشد یا خیر
    if (regx.test(dateValue))
    {
    alert("s22222");
    Year = new Number(dateValue.substring(0, 4));
    Month = new Number(dateValue.substring(5, 7));
    Day = new Number(dateValue.substring(8, 10));

    // تبدیل تاریخ میلادی به شمسی
    var j = gregorian_to_jd(Year,Month,Day);
    perscal = jd_to_persian(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 shamsiDate = pyear + "/" + pmonth + "/" + pday;

    // جایگذاری مقدار تاریخ میلادی با شمسی
    alert("s33333");
    tags[i].textContent= shamsiDate;


    }

    }
    }



    اصلا هیچوقت فرمم موقع لود شدن ،آلِرت 2222 نمیده...فقط 4 بار حلقه ی for اجرا میشه،و 4 بار هم آلرت 1111 میده و تمام....دیگه هیچ آلرتی نمیده....این در صورتیه که من دو تا تاریخ دارم توی لیستم...

  13. #13

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

    در واقع مقدار ((regx.test(dateValue) هیچوقت true نمیشه :)

  14. #14
    کاربر تازه وارد آواتار feri10
    تاریخ عضویت
    اسفند 1390
    محل زندگی
    في الارض
    پست
    65

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

    دستتون درد نکنه بابت مطلب مفیدتون.
    من هم دقیقا مشکل mona11 را دارم کدها را کپی و اجرا کردم ولی هیچ اتفاقی نیافتاد. اگر آقای احمدی عزیز لطف کنید کمک کنید ممنون میشم خیلی ضروریه در ضمن من از اکسپلورر فقط استفاده می کنم.
    آخرین ویرایش به وسیله feri10 : دوشنبه 26 فروردین 1392 در 10:30 صبح

  15. #15
    کاربر تازه وارد آواتار feri10
    تاریخ عضویت
    اسفند 1390
    محل زندگی
    في الارض
    پست
    65

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

    آقای احمدی کد را که دیباگ می کردم اصلا هیچ تاریخی را پیدا نمی کرد چون قالبتون اشتباه بود تو این خط:
    var RegExPattern = "\\d{4}\\/\\d{2}\\/\\d{2}";

    که باید به صورت
    var RegExPattern = "\\d{2}\\/\\d{2}\\/\\d{4}";
    می نوشتید.
    ولی باز مشکل داره لطفا یک چک کلی بکنید کد را. محبت می کنید.
    ممنون.

  16. #16

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

    منم همینطور که داشتم کد رو چک میکردم،متوجه شدم تابع jd_to_persian اصلا هیچ مقداری رو بر نمیگردونه.... خودم جای پارامتر ورودیش،به صورت دستی یه عدد رو وارد کردم و بعدش یه آلرت گذاشتم که بعد از اجرا،آلرت من نمایش داده نشد و فهمیدم این تابع مشکل داره...

  17. #17
    کاربر تازه وارد آواتار feri10
    تاریخ عضویت
    اسفند 1390
    محل زندگی
    في الارض
    پست
    65

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

    بالاخره درست شد اینم کد صحیحش:


    <script type="text/javascript">
    // متغير هاي مورد نياز
    var Day;
    var Month;
    var Year;
    var pday;
    var pmonth;
    var pyear;

    // دريافت تمام تگ هاي تي دي در صفحه
    var tags = document.getElementsByTagName('TD');
    for (var i = 0; i < tags.length; i++) {
    // دريافت مقدار کلاس تگ
    var TdClassName = tags[i].className;
    // چک کردن مقدار
    if (TdClassName.indexOf('ms-vb2') != -1) {
    // ذخيره مقدار درون تگ
    dateValue = tags[i].innerText;
    var d = new Date(dateValue == "" ? "N" : dateValue);
    // چک کردن اينکه آيا مقدار درون تگ از نوع تاريخ مي باشد يا خير
    if(!isNaN(d))
    {
    Year = new Number(d.getFullYear());
    Month = new Number(d.getMonth());
    Day = new Number(d.getDay());
    // تبديل تاريخ ميلادي به شمسي
    var j = gregorian_to_jd(Year, Month, Day);
    perscal = jd_to_persian(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 shamsiDate = pyear + "/" + pmonth + "/" + pday;
    // جايگذاري مقدار تاريخ ميلادي با شمسي
    tags[i].innerText = shamsiDate;
    }
    }
    }
    // توابع تبديل تاريخ

    function mod(a, b)
    {
    return a - (b * Math.floor(a / b));
    }
    function leap_gregorian(year) {
    return ((year % 4) == 0) &&
    (!(((year % 100) == 0) && ((year % 400) != 0)));
    }

    function gregorian_to_jd(year, month, day) {
    var GREGORIAN_EPOCH = 1721425.5;
    return (GREGORIAN_EPOCH - 1) +
    (365 * (year - 1)) +
    Math.floor((year - 1) / 4) +
    (-Math.floor((year - 1) / 100)) +
    Math.floor((year - 1) / 400) +
    Math.floor((((367 * month) - 362) / 12) +
    ((month <= 2) ? 0 :
    (leap_gregorian(year) ? -1 : -2)) +
    day);
    }

    function persian_to_jd(year, month, day)
    {
    var PERSIAN_EPOCH = 1948320.5;
    var epbase, epyear;
    epbase = year - ((year >= 0) ? 474 : 473);
    epyear = 474 + mod(epbase, 2820);

    return day +
    ((month <= 7) ?
    ((month - 1) * 31) :
    (((month - 1) * 30) + 6)
    ) +
    Math.floor(((epyear * 682) - 110) / 2816) +
    (epyear - 1) * 365 +
    Math.floor(epbase / 2820) * 1029983 +
    (PERSIAN_EPOCH - 1);
    }
    function jd_to_persian(jd)
    {
    var year, month, day, depoch, cycle, cyear, ycycle,
    aux1, aux2, yday;
    jd = Math.floor(jd) + 0.5;
    depoch = jd - persian_to_jd(475, 1, 1);
    cycle = Math.floor(depoch / 1029983);
    cyear = mod(depoch, 1029983);
    if (cyear == 1029982) {
    ycycle = 2820;
    } else {
    aux1 = Math.floor(cyear / 366);
    aux2 = mod(cyear, 366);
    ycycle = Math.floor(((2134 * aux1) + (2816 * aux2) + 2815) / 1028522) +
    aux1 + 1;
    }
    year = ycycle + (2820 * cycle) + 474;
    if (year <= 0) {
    year--;
    }
    yday = (jd - persian_to_jd(year, 1, 1)) + 1;
    month = (yday <= 186) ? Math.ceil(yday / 31) : Math.ceil((yday - 6) / 30);
    day = (jd - persian_to_jd(year, month, 1)) + 1;
    return new Array(year, month, day);
    }
    </script>


  18. #18

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

    احسنت....مرسی آقا فری مرسی آقای احمدی...یه کم استراحت کنیم،شب میریم سراغ قسمت دوم مقاله :)

  19. #19
    کاربر تازه وارد آواتار feri10
    تاریخ عضویت
    اسفند 1390
    محل زندگی
    في الارض
    پست
    65

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

    ارادت.
    من که نمیتونم استراحت کنم باید همین الان قسمت دوم رو هم تست کنم اگر کمک کنید ممنون میشم.

  20. #20

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

    اینم که مقدارشو اشتباه برمیگردونه :)))))
    امروز تاریخش 2013/4/15 هست دیگه؟درست؟باید 1392/1/26 برگردونه که مقدار 1391/12/11 رو برمیگردونه :)

  21. #21

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

    مشکلاتی که برای شما به وجود اومده به خاطر اینه که در سایت های انگلیسی فرمت تاریخ به صورت سال ، ماه ، روز نیست ، بلکه به صورت ماه ، روز ، سال ذخیره میشه ، از کدهای زیر استفاده کنید تا مشکلتون حل بشه :

    <script type="text/javascript">

    // متغیر های مورد نیاز
    var Day;
    var Month;
    var Year;
    var pday;
    var pmonth;
    var pyear;

    // الگوی تشخیص مقادیر تاریخ
    var RegExPattern = "\\d{1}\\/\\d{2}\\/\\d{4}";
    var RegExPattern2 = "\\d{2}\\/\\d{2}\\/\\d{4}";
    // دریافت تمام تگ های تی دی در صفحه
    var tags = document.getElementsByTagName('TD');
    for (var i = 0; i < tags.length; i++)
    {
    // دریافت مقدار کلاس تگ
    var TdClassName = tags[i].className;

    // چک کردن مقدار
    if (TdClassName .indexOf('ms-vb2') != -1)
    {
    // ذخیره مقدار درون تگ
    if(document.all){
    dateValue = tags[i].innerText;
    } else{
    dateValue = tags[i].textContent;
    }

    var regx = new RegExp(RegExPattern, "g");
    var regx2 = new RegExp(RegExPattern2, "g");
    // چک کردن اینکه آیا مقدار درون تگ از نوع تاریخ می باشد یا خیر
    if (regx.test(dateValue) || regx2.test(dateValue))
    {
    var splitter = dateValue.split('/');
    Year = new Number(splitter[2]);
    Month = new Number(splitter[0]);
    Day = new Number(splitter[1]);

    // تبدیل تاریخ میلادی به شمسی
    var j = gregorian_to_jd(Year,Month,Day);
    perscal = jd_to_persian(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 shamsiDate = pyear + "/" + pmonth + "/" + pday;

    // جایگذاری مقدار تاریخ میلادی با شمسی
    if(document.all){
    tags[i].innerText = shamsiDate;
    } else{
    tags[i].textContent = shamsiDate;
    }

    }

    }
    }

    // توابع تبدیل تاریخ
    var GREGORIAN_EPOCH = 1721425.5;
    function leap_gregorian(year) {
    return ((year % 4) == 0) &&
    (!(((year % 100) == 0) && ((year % 400) != 0)));
    }


    function gregorian_to_jd(year, month, day) {
    return (GREGORIAN_EPOCH - 1) +
    (365 * (year - 1)) +
    Math.floor((year - 1) / 4) +
    (-Math.floor((year - 1) / 100)) +
    Math.floor((year - 1) / 400) +
    Math.floor((((367 * month) - 362) / 12) +
    ((month <= 2) ? 0 :
    (leap_gregorian(year) ? -1 : -2)
    ) +
    day);
    }

    function jd_to_persian(jd)
    {
    var year, month, day, depoch, cycle, cyear, ycycle,
    aux1, aux2, yday;


    jd = Math.floor(jd) + 0.5;

    depoch = jd - persian_to_jd(475, 1, 1);
    cycle = Math.floor(depoch / 1029983);
    cyear = mod(depoch, 1029983);
    if (cyear == 1029982) {
    ycycle = 2820;
    } else {
    aux1 = Math.floor(cyear / 366);
    aux2 = mod(cyear, 366);
    ycycle = Math.floor(((2134 * aux1) + (2816 * aux2) + 2815) / 1028522) +
    aux1 + 1;
    }
    year = ycycle + (2820 * cycle) + 474;
    if (year <= 0) {
    year--;
    }
    yday = (jd - persian_to_jd(year, 1, 1)) + 1;
    month = (yday <= 186) ? Math.ceil(yday / 31) : Math.ceil((yday - 6) / 30);
    day = (jd - persian_to_jd(year, month, 1)) + 1;
    return new Array(year, month, day);
    }



    </script>

  22. #22
    کاربر تازه وارد آواتار feri10
    تاریخ عضویت
    اسفند 1390
    محل زندگی
    في الارض
    پست
    65

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

    مرسی آقای احمدی بابت لطفتون.
    کد شما بعضی وقت ها کار نمیکنه یا اگر با زمان باشه تاریخ خطا میده . یک کد میزارم فکر کنم این بهتره واسه هر قالبی هم کار می کنه.


    <script type="text/javascript">
    // متغير هاي مورد نياز
    var Day;
    var Month;
    var Year;
    var pday;
    var pmonth;
    var pyear;

    // دريافت تمام تگ هاي تي دي در صفحه
    var tags = document.getElementsByTagName('TD');
    for (var i = 0; i < tags.length; i++) {
    // دريافت مقدار کلاس تگ
    var TdClassName = tags[i].className;
    // چک کردن مقدار
    if (TdClassName.indexOf('ms-vb2') != -1) {
    // ذخيره مقدار درون تگ
    dateValue = tags[i].innerText;
    var d = new Date(dateValue == "" ? "N" : dateValue);
    // چک کردن اينکه آيا مقدار درون تگ از نوع تاريخ مي باشد يا خير
    if(!isNaN(d))
    {
    Year = d.getFullYear();
    Month = d.getMonth() + 1;
    Day = d.getDate();
    // تبديل تاريخ ميلادي به شمسي
    var j = gregorian_to_jd(Year, Month, Day);
    perscal = jd_to_persian(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 shamsiDate = pyear + "/" + pmonth + "/" + pday;
    // جايگذاري مقدار تاريخ ميلادي با شمسي
    tags[i].innerText = shamsiDate;
    }
    }
    }
    // توابع تبديل تاريخ

    function mod(a, b)
    {
    return a - (b * Math.floor(a / b));
    }
    function leap_gregorian(year) {
    return ((year % 4) == 0) &&
    (!(((year % 100) == 0) && ((year % 400) != 0)));
    }

    function gregorian_to_jd(year, month, day) {
    var GREGORIAN_EPOCH = 1721425.5;
    return (GREGORIAN_EPOCH - 1) +
    (365 * (year - 1)) +
    Math.floor((year - 1) / 4) +
    (-Math.floor((year - 1) / 100)) +
    Math.floor((year - 1) / 400) +
    Math.floor((((367 * month) - 362) / 12) +
    ((month <= 2) ? 0 :
    (leap_gregorian(year) ? -1 : -2)) +
    day);
    }

    function persian_to_jd(year, month, day)
    {
    var PERSIAN_EPOCH = 1948320.5;
    var epbase, epyear;
    epbase = year - ((year >= 0) ? 474 : 473);
    epyear = 474 + mod(epbase, 2820);

    return day +
    ((month <= 7) ?
    ((month - 1) * 31) :
    (((month - 1) * 30) + 6)
    ) +
    Math.floor(((epyear * 682) - 110) / 2816) +
    (epyear - 1) * 365 +
    Math.floor(epbase / 2820) * 1029983 +
    (PERSIAN_EPOCH - 1);
    }
    function jd_to_persian(jd)
    {
    var year, month, day, depoch, cycle, cyear, ycycle,
    aux1, aux2, yday;
    jd = Math.floor(jd) + 0.5;
    depoch = jd - persian_to_jd(475, 1, 1);
    cycle = Math.floor(depoch / 1029983);
    cyear = mod(depoch, 1029983);
    if (cyear == 1029982) {
    ycycle = 2820;
    } else {
    aux1 = Math.floor(cyear / 366);
    aux2 = mod(cyear, 366);
    ycycle = Math.floor(((2134 * aux1) + (2816 * aux2) + 2815) / 1028522) +
    aux1 + 1;
    }
    year = ycycle + (2820 * cycle) + 474;
    if (year <= 0) {
    year--;
    }
    yday = (jd - persian_to_jd(year, 1, 1)) + 1;
    month = (yday <= 186) ? Math.ceil(yday / 31) : Math.ceil((yday - 6) / 30);
    day = (jd - persian_to_jd(year, month, 1)) + 1;
    return new Array(year, month, day);
    }
    </script>


    موفق باشید.

  23. #23
    کاربر جدید آواتار Ariaee.Tahereh
    تاریخ عضویت
    خرداد 1392
    محل زندگی
    Tehron
    سن
    34
    پست
    18

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

    مرسي آق فري من با اين كد مشكل داشتم اين كده آخري كه زحمتش و كشيديد داخل MasterPage گذاشتم جواب داد فقط منم برم سراغ قسمت دوم مقاله

    فقط يه سوال از حضورتان داشتم اينكه تاريخ به شمسي كانورت ميشه ولي چه كنيم كه علاوه بر تاريخ شمسي ميلادي هم داشته باشيم ببينيد برخي از ليست ها

    شامل تاريخ ميلادي و برخي شامل تاريخ شمسي اينكه Source Code همان ليست را ويرايش كنم كفايت ميكند ؟
    آخرین ویرایش به وسیله Ariaee.Tahereh : سه شنبه 07 خرداد 1392 در 11:39 صبح

  24. #24
    کاربر تازه وارد آواتار feri10
    تاریخ عضویت
    اسفند 1390
    محل زندگی
    في الارض
    پست
    65

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

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

  25. #25
    کاربر جدید آواتار Ariaee.Tahereh
    تاریخ عضویت
    خرداد 1392
    محل زندگی
    Tehron
    سن
    34
    پست
    18

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

    البته اگر خودتون قسمت دوم را ببینید متوجه می شوید که در ذخیره تاریخ ها که خارج از رنج میلادی است به خطا می خورید پس فعلا عجله نکنید.
    سلام بله اينكه با تغيير Master Page به تمامي زير سايتها اعمال ميشه بحثي نيست و سوالم اينه كه اگر بخواهيم به بعضي ستونها اعمال بشه از طريق Source Cod همون ليست اقدام كنيم نه MasterPage تا اينجا اوكي ولي من مقاله دوم آقاي احمدي هم اجرا كردم و شكل تقويم هم بروي DataPicker ديده ميشه ولي بعد از ذخيره پيغام ميده چه كنم كه اوكي بشه ؟ تقويم شمسي رو مخم رفته بد

  26. #26
    کاربر تازه وارد آواتار feri10
    تاریخ عضویت
    اسفند 1390
    محل زندگی
    في الارض
    پست
    65

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

    همین که قبلا گفتم چون شیرپوینت نمیتونه تاریخ شمسی را ذخیره کنه خطا میده. برای ذخیره کردن من که اصلا وقت ندارم ولی آقای احمدی که همیشه لطف دارن قراره درستش کنن.
    موفق باشید.

  27. #27
    کاربر جدید آواتار Ariaee.Tahereh
    تاریخ عضویت
    خرداد 1392
    محل زندگی
    Tehron
    سن
    34
    پست
    18

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

    بله صد در صد همه درگير وشلوغند ولي بازهم متشكرم .

  28. #28

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

    ساخت تقویم شمسی با این روش آقای احمدی کار سختیه اما راههای دیگه ای هم هست که نیاز شما رو برطرف میکنه...میتونید از از Event Reciever استفاده کنید .حتی میتونید کدی رو بنویسید و اون رو داخل فرم اینفو پت هم به کار گیری کنید.اما روش آقای احمدی خیلی راه حل شیک و مجلسیش هست

  29. #29

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

    نقل قول نوشته شده توسط mona11 مشاهده تاپیک
    ساخت تقویم شمسی با این روش آقای احمدی کار سختیه اما راههای دیگه ای هم هست که نیاز شما رو برطرف میکنه...میتونید از از Event Reciever استفاده کنید .حتی میتونید کدی رو بنویسید و اون رو داخل فرم اینفو پت هم به کار گیری کنید.اما روش آقای احمدی خیلی راه حل شیک و مجلسیش هست
    سلام، میشه بیشتر توضیح بدین چطوری باید از event receiver استفاده کرد؟

  30. #30

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

    این مبحث،خودش یه دوره آموزشی در سطح Developer میطلبه که میتونید با شرکت در کلاسهای آموزشی شیرپوینت اون رو فرا بگیرید.البته اگر دوره Develop رو جایی برگذار کنند!!!

  31. #31
    کاربر جدید آواتار Ariaee.Tahereh
    تاریخ عضویت
    خرداد 1392
    محل زندگی
    Tehron
    سن
    34
    پست
    18

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

    مهندس آخه اين موردي هم كه آقاي احمدي زحمت رو كشيدند كه فقط تاريخ شمسي ميدهد و دوتا انتخاب نميده كه توضيح يعديشون هم كه با error مواجه شديم پس عملا كاري نميشه كرد

  32. #32

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

    این روش رو کسی روی 2013 امتحان کرده؟
    جواب میده؟
    من امتحان کردم ولی هیچ کدوم جواب نداد

  33. #33
    کاربر دائمی
    تاریخ عضویت
    تیر 1388
    محل زندگی
    تهران
    سن
    37
    پست
    135

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

    سلام من روی 2013 امتحان کردم هیچ جوره جواب نمیده مشکلش هم اینه که اصلاً تگ های td رو شناسایی نمیکنه که بخواد وارد بقیه بشه


تاپیک های مشابه

  1. کمک در باره پیاده سازی درخت شجره نامه فامیلی با استفاده از روابط درخت در ساختمان داده ها
    نوشته شده توسط erfan121 در بخش الگوریتم، کامپایلر، هوش مصنوعی و ساختمان داده ها
    پاسخ: 0
    آخرین پست: چهارشنبه 08 تیر 1390, 10:43 صبح
  2. ارور در استفاده از جاوا اسکریپت
    نوشته شده توسط fabdolkarimi در بخش طراحی وب (Web Design)
    پاسخ: 4
    آخرین پست: چهارشنبه 18 اردیبهشت 1387, 15:56 عصر
  3. ارور در استفاده از جاوا اسکریپت
    نوشته شده توسط fabdolkarimi در بخش طراحی وب (Web Design)
    پاسخ: 2
    آخرین پست: سه شنبه 17 اردیبهشت 1387, 13:23 عصر
  4. اضافه کردن ایتم به asp :dropdownlistبا استفاده از جاوا اسکریپت
    نوشته شده توسط negar_1986 در بخش طراحی وب (Web Design)
    پاسخ: 2
    آخرین پست: پنج شنبه 29 آذر 1386, 02:16 صبح
  5. پاسخ: 1
    آخرین پست: یک شنبه 02 اسفند 1383, 09:44 صبح

قوانین ایجاد تاپیک در تالار

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