تقسیم بندی زمان در بازه های زمانی مختلف توسط جاوااسکریپت
اگه بخواهم از ساعت 11 تا 12 را 5 دقیقه 5 دقیقه تقسیم کنم و به صورت
11:5
11:10
11:15
11:20
11:25.....................تا ساعت 12 و بتونم نمایش بدهم باید چکار کنم؟؟ با جاوا اسکریپت یا سی شارپ یا Asp.net Core ؟؟؟؟
* ویرایش *
من دقیقا نمایش در html را به همین صورت می خواهم و سی شارپ هم همین را میخواهم ولی الان می خواهم درسی شارپ بعد از تقسیم بندی و تکه تکه کردن زمان آن رادر قسمت html چگونه به طور خودکار و غیر دستی تیکه تیکه شده وبا رادیو با تم نمایش دهم؟؟
پاسخ هوش مصنوعی
برای تقسیم بندی زمان در بازه های دلخواه با استفاده از جاوااسکریپت، می توانید کدی به شکل زیر بنویسید:
function generateTimeSlots(startHour, startMinute, endHour, endMinute, interval) {
let times = [];
let current = new Date();
current.setHours(startHour, startMinute, 0, 0);
let end = new Date();
end.setHours(endHour, endMinute, 0, 0);
while (current <= end) {
times.push(current.toLocaleTimeString([], { hour: '2-digit', minute: '2-digit' }));
current.setMinutes(current.getMinutes() + interval);
}
return times;
}
let timeSlots = generateTimeSlots(11, 5, 12, 0, 5);
timeSlots.forEach(time => {
document.body.innerHTML += `${time}
`;
});
این کد ابتدا با استفاده از تابع generateTimeSlots زمان ها را در بازه 11:05 تا 12:00 به فواصل 5 دقیقه ای تولید می کند و سپس آن ها را در HTML نمایش می دهد.
اگر به دنبال پیاده سازی مشابه در C# و ASP.NET Core هستید، می توانید از کد زیر استفاده کنید:
public List GenerateTimeSlots(int startHour, int startMinute, int endHour, int endMinute, int interval)
{
var times = new List();
var current = new DateTime(1, 1, 1, startHour, startMinute, 0);
var end = new DateTime(1, 1, 1, endHour, endMinute, 0);
while (current <= end)
{
times.Add(current.ToString("hh:mm tt"));
current = current.AddMinutes(interval);
}
return times;
}
برای نمایش زمان ها در HTML، می توانید از View در ASP.NET Core استفاده کنید و فهرست تولید شده را به صورت خودکار و غیر دستی در صفحه قرار دهید.
اگر هدف شما نمایش این اطلاعات هست خب اصولا سی شارپ یا Asp.net Core برای بحث BackEnd هستند و برای نمایش اطلاعات به کاربر نیستند. دقیقا هدف شما رو نمیدونم چی هست ولی شما میتونید خیلی راحت توسط دستورات Html اگر پروژه شما وب هست این حالت رو نمایش بدید.
<input type="radio" id="t1" name="time" value="t1">
<label>11 : 00</label>
<br>
<input type="radio" id="t2" name="time" value="t2">
<label>11 : 05</label>
<br>
<input type="radio" id="t3" name="time" value="t3">
<label>11 : 10</label>
<br>
...
خب شما در بالا هر زمانی رو به صورت یک radio Button نمایش میدید که قابل انتخاب هم هست.
اگر هم هدفتون این هست که یک بازه زمانی رو مشخص کنید و اون رو 5 دقیقه 5 دقیقه بشکونید می تونید توسط دستورات سی شارپ این کار رو انجام بدید :
TimeSpan ts = TimeSpan.Parse("11:00");
int minutes = ts.Minutes * 5;
البته دستور بالا یک دستور خام هست. یعنی برای استفاده در پروژه باید تغییر بدید. چون منظور شما واضح مشخص نیست در همین حد میشه راهنمایی کرد.
- آموزش استفاده از پلاگین گردونه شانس در Asp.net core به همراه سورس
- نمایش متن به صورت فرمت شده در CkEditor
- آموزش استفاده از SignalR در Asp.net Core با مثال عملی
- ادغام چند گزارش استیمول سافت بصورت پی دی اف در یک فایل
- نحوه تغییر استایل کامپوننت select2 چگونه است ؟
- چگونه امنیت پروژه را در Asp.net Core افزایش دهیم ؟
- ارسال پارامتر در دستور window.open جی کویری
- ارسال پارامتر از طریق جاوااسکریپت با کلیک روی تگ a
- خطای 500 زمان اجرا شدن پروژه روی هاست
- کویری نویسی در استیمول سافت جهت فیلتر اطلاعات
- کار با CkEditor با قابلیت آپلود عکس
- خطا در ایجاد migration در Asp.net core
- تفاوت های Asp.net core و Asp.net mvc چیه؟
- دلیل اسپم شدن ایمیل های ارسالی از سرور
- نحوه لایه بندی پروژه Core و اضافه کردن به IIS
- ارسال ایمیل در Asp.net core
- آیا میشه در mvc core از کامپونت استفاده کرد
- آپلود فایل در Asp.net core چگونه است؟
- حذف کامل یک رکورد در جدول ریلیشن شده
- اشکال در آپلود فایل ویدیو در mvc core 2