مرجع تخصصی برنامه نویسان

انجمن تخصصی برنامه نویسان فارسی زبان

کاربر سایت

nima1989n

عضویت از 1396/06/18

شمارش معکوس / countdown Timer

  • پنجشنبه 17 آبان 1397
  • 17:28
تشکر میکنم

با عرض سلام و خسته نباشید خدمت دوستان عزیز.

من یه شمارنده معکوس میخواستم (countdown timer) که تو سایت ازش استفاده کنم البته موارد زیادی بودن در این مورد که دوستان زحمت کشیده بودن ولی او چیزی که میخواستم رو پیدا نکردم، میخواستم پارامتر های که به تابع ارسال میشه رو از طریق کد ( حالا تو رویدار پیج لود یا زمانی که یه تابعی فراخوانی میشه تو برنامه ) اون موقع ارسال کنم یا نه توی یه تگ html تو قسمت body تابع رو فراخوانی و پارامتر ها رو واسش بفرستم ( پارامتر مثلا تاریخ انقضا ) ممنون میشم راهنماییم کنید.

پاسخ های این پرسش

تعداد پاسخ ها : 5 پاسخ
کاربر سایت

ایمان مدائنی

عضویت از 1392/01/20

  • پنجشنبه 17 آبان 1397
  • 17:32

در سایت نمونه هست 

اگر نمی پسندید باید سرچ کنید و نمونه های خارجی ببینید و خودتون اصلاح کنید 

یا میتونید در سایت برنامه نویس با آدرس  https://barnamenevis.ir/ سفارش بدید براتون بسازند 

روز شمار معکوس در Asp.Net

کاربر سایت

nima1989n

عضویت از 1396/06/18

  • پنجشنبه 17 آبان 1397
  • 17:53

ممنون ، دقیقا همین لینک روز شمار رو که گذاشتید دارم ، فقط یه سوال دارم یه لینک دیگه هم دارم و درسته ولی نمیدونم چجوری تو برنامه فراخوانی کنم یا تو html

 <script type="text/javascript">
        function countdown_clock(clockID, year, month, day, hour, minute) {
            countdown(clockID, year, month, day, hour, minute);
        }

        function countdown(clockID, year, month, day, hour, minute) {
            Today = new Date();
            Todays_Year = Today.getFullYear();
            Todays_Month = Today.getMonth();

            //Convert both today's date and the target date into miliseconds.                           
            Todays_Date = (new Date(Todays_Year, Todays_Month, Today.getDate(),
                Today.getHours(), Today.getMinutes(), Today.getSeconds())).getTime();
            Target_Date = (new Date(year, month - 1, day, hour, minute, 00)).getTime();

            //Find their difference, and convert that into seconds.                  
            Time_Left = Math.round((Target_Date - Todays_Date) / 1000);

            if (Time_Left < 0)
                Time_Left = 0;

            days = Math.floor(Time_Left / (60 * 60 * 24));
            Time_Left %= (60 * 60 * 24);
            hours = Math.floor(Time_Left / (60 * 60));
            Time_Left %= (60 * 60);
            minutes = Math.floor(Time_Left / 60);
            Time_Left %= 60;
            seconds = Time_Left;

            dps = 's'; hps = 's'; mps = 's'; sps = 's';
            //ps is short for plural suffix.
            if (days == 1) dps = '';
            if (hours == 1) hps = '';
            if (minutes == 1) mps = '';
            if (seconds == 1) sps = '';

            var clock = document.getElementById(clockID);
            clock.innerHTML = days + ' day' + dps + ' ';
            clock.innerHTML += hours + ' hour' + hps + ' ';
            clock.innerHTML += minutes + ' minute' + mps + ' and ';
            clock.innerHTML += seconds + ' second' + sps;

            //Recursive call, keeps the clock ticking.
            setTimeout('countdown("' + clockID + '",' + year + ',' + month + ',' + day + ',' + hour + ',' + minute + ');', 1000);
        }
    </script>

اینم کدش هستش

protected override void OnPreRender(EventArgs e)
        {
            DateTime endDate = new DateTime(2020, 6, 1, 0, 0, 0);
            string script = string.Format("countdown_clock('clock', {0}, {1}, {2}, {3}, {4});", endDate.Year, endDate.Month, endDate.Day, endDate.Hour, endDate.Minute);
            ScriptManager.RegisterStartupScript(this, this.GetType(), "countdown", script, true);
            base.OnPreRender(e);
        }

الان مشکلی که دارم نمیدونم اینارو چجوری بهم وصل کنم و در زمان لود شدن سایت خروجی رو بگیرم

کاربر سایت

ایمان مدائنی

عضویت از 1392/01/20

  • جمعه 18 آبان 1397
  • 10:40

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

اگر تعداد هست میتونید با Repeater یا ListView روی صفحه قرار دهید و با DataSource کنترلشون کنید 

کاربر سایت

nima1989n

عضویت از 1396/06/18

  • شنبه 19 آبان 1397
  • 01:18

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

<asp:Label ID="lbl_countdown" runat="server"></asp:Label>

مشکل من این هستش که چجوری تابع رو اینجا فراخوانی کنم و پارامتر ها رو بفرستم و جواب رو تو این لیبل بزارم و شمارش معکوس اینجا کار کنه

کاربر سایت

ایمان مدائنی

عضویت از 1392/01/20

  • شنبه 19 آبان 1397
  • 06:43

باید استفاده از ViewState ارسال کنید و در تابع دریافت کنید 

یا میتونید در یه Hidden Field قرار دهید و در تابع از اون مقدار رو بگیرید 

کاربرانی که از این پست تشکر کرده اند

هیچ کاربری تا کنون از این پست تشکر نکرده است

اگر نیاز به یک مشاور در زمینه طراحی سایت ، برنامه نویسی و بازاریابی الکترونیکی دارید

با ما تماس بگیرید تا در این مسیر همراهتان باشیم :)