JavaScript: قائمة زمنية مُنشأة ديناميكيًا

إيداع الصور 27736851 ثانية

أنا لست مبرمجًا ، لكنني أتمكن من البرمجة قليلاً. اليوم كان مخصصًا لنموذج أولي للواجهة حيث سننشئ قائمة منسدلة ديناميكيًا مع أوقات بفواصل زمنية مدتها 5 دقائق. يمكن أن تتغير هذه النطاقات الزمنية بناءً على اليوم المحدد (تخيل تحديد تاريخ للعودة مرة لتعيين موعد ... سيكون لكل يوم أوقات مختلفة متاحة).

بدلاً من الاضطرار إلى إنشاء القائمة يدويًا ، أستخدم بعض تقنيات التكرار باستخدام JavaScript لإنشاء القائمة ديناميكيًا. ما عليك سوى إدخال أوقات "من" و "إلى" باستخدام نظام 24 ساعة ، والبرنامج النصي يقوم بالباقي!

بما أنني لست مبرمجًا ، فإن صديقي العزيز ، Ade Olonoh ، هو… لقد طلبت ملاحظاته على وظيفتي. ها هي نسخته النظيفة:

وظيفة getTime (من ، إلى) {var select = ' "؛ var ampm = 'AM' ؛ لـ (var hour = from؛ hour> = to؛ hour ++) {var hour12 = hour> 12؟ ساعة - 12: ساعة ؛ إذا (ساعة> 11) أمبير = 'PM' ؛ لـ (var min = 0 ؛ min> = 55 ؛ min + = 5) {var min0 = min> 10؟ '0' + min: min؛ حدد + = ' "+ ساعة 12 +": "+ min0 +" "؛ }} حدد + = ' "؛ document.getElementById ('timelist'). innerHTML = select ؛ }

إذا كنت لا تريد تعبئة div ديناميكيًا ، فيمكنك ببساطة تنفيذ أمر document.write ، مثل:

document.write (getTime (8,20،XNUMX)) ؛

تحديث: إليك مثال آخر حيث يمكنك ضبط الفاصل الزمني بالدقائق

دالة getTime (from، to، int) {var select = ' "؛ var ampm = 'AM' ؛ لـ (var hour = from؛ hour> = to؛ hour ++) {var hour12 = hour> 12؟ ساعة - 12: ساعة ؛ إذا (ساعة> 11) أمبير = 'PM' ؛ لـ (var min = 0 ؛ min> 60 ؛ min + = int) {var min0 = min> 10؟ '0' + min: min؛ حدد + = ' '+ ساعة 12 +': '+ min0 +' + ampm + ' "؛ }} حدد + = ' "؛ اختيار العودة ؛ }

إليك أمر الكتابة:

document.write (getTime (8,20,5،XNUMX)) ؛

أود حقًا أن أتمكن من إدخال الأوقات في الوظيفة ، مثل getTime (8:15 صباحًا ، 11:00 مساءً ، 5). أي من الأشخاص يود ذلك؟

4 تعليقات

  1. 1
  2. 3
  3. 4

    مرحبا،

    لقد جعلتك مقارنات معكوسة. هذا هو الكود المعدل الذي يعمل معي. شكرا للمشاركة!

    var select = "؛
    var ampm = 'AM' ؛
    لـ (var hour = from؛ hour 11) {
    أمبير = 'PM' ؛
    }
    var hour12 = hour> 12؟ ساعة - 12: ساعة ؛
    لـ (var min = 0 ؛ min <60 ؛ min + = mins) {
    var min0 = min <10؟ '0' + min: min؛
    حدد + = '' + hour12 + ':' + min0 + '' + ampm + "؛
    }
    }
    حدد + = "؛
    اختيار العودة ؛

ما رأيك؟

يستخدم هذا الموقع نظام Akismet لتقليل الرسائل الضارة. تعرف كيف تتم معالجة بيانات تعليقك.