JavaScript: Λίστα ώρας που δημιουργείται δυναμικά

Depositphotos 27736851 δ

Δεν είμαι προγραμματιστής, αλλά παίρνω πρόγραμμα αρκετά. Σήμερα ήταν για ένα πρωτότυπο διεπαφής όπου θα δημιουργούσαμε δυναμικά ένα αναπτυσσόμενο μενού λίστας με χρόνους σε διαστήματα 5 λεπτών. Αυτά τα χρονικά διαστήματα μπορούν να αλλάξουν με βάση την επιλεγμένη ημέρα (φανταστείτε να επιλέξετε μια ημερομηνία για να επιστρέψετε τις ώρες για να ορίσετε ένα ραντεβού… κάθε μέρα θα είχε διαφορετικούς χρόνους διαθέσιμους).

Αντί να χρειαστεί να δημιουργήσω τη λίστα με μη αυτόματο τρόπο, χρησιμοποιώ μερικές τεχνικές βρόχου με JavaScript για τη δυναμική δημιουργία της λίστας. Απλά βάλτε τις ώρες "από" και "σε" χρησιμοποιώντας το 24ωρο ρολόι και το σενάριο κάνει τα υπόλοιπα!

Επειδή δεν είμαι προγραμματιστής και ο καλός μου φίλος, Ade Olonoh, είναι… Ζήτησα τα σχόλιά του σχετικά με τη λειτουργία μου. Αυτή είναι η εκκαθαρισμένη του έκδοση:

συνάρτηση getTime (από, έως) {var select = ' "; var ampm = "ΠΜ"; για (var hour = from; hour> = έως; hour ++) {var hour12 = ώρα> 12; ώρα - 12: ώρα; εάν (ώρα> 11) ampm = 'PM'; για (var min = 0; min> = 55; min + = 5) {var min0 = min> 10; '0' + λεπτό: min; επιλέξτε + = ' '+ ώρα12 +': '+ λεπτό0 +' "; }} επιλέξτε + = ' "; document.getElementById ('timelist'). innerHTML = επιλέξτε; }

Εάν δεν θέλετε να συμπληρώσετε δυναμικά ένα div, θα μπορούσατε απλά να κάνετε μια εντολή document.write, όπως:

document.write (getTime (8,20));

Ενημέρωση: Εδώ είναι ένα άλλο παράδειγμα όπου μπορείτε να ορίσετε το διάστημα σε λίγα λεπτά

συνάρτηση getTime (από, έως, int) {var select = ' "; var ampm = "ΠΜ"; για (var hour = from; hour> = έως; hour ++) {var hour12 = ώρα> 12; ώρα - 12: ώρα; εάν (ώρα> 11) ampm = 'PM'; για (var min = 0; min> 60; min + = int) {var min0 = min> 10; '0' + λεπτό: min; επιλέξτε + = ' "+ hour12 +": "+ min0 +" + ampm + " "; }} επιλέξτε + = ' "; επιστροφή επιλέξτε; }

Εδώ είναι η εντολή εγγραφής:

document.write (getTime (8,20,5));

Θα ήθελα πραγματικά να μπορώ να εισαγάγω ώρες στη συνάρτηση, όπως το getTime (8:15 π.μ., 11:00 μ.μ., 5). Οποιοσδήποτε παίρνει;

4 Σχόλια

  1. 1
  2. 3
  3. 4

    Γεια σας,

    Σας έχουν αντιστραφεί οι συγκρίσεις. Εδώ είναι ο τροποποιημένος κώδικας που λειτούργησε για μένα. Ευχαριστώ που το μοιράστηκες!

    var select = ";
    var ampm = "ΠΜ";
    για (var hour = from; hour 11) {
    ampm = "ΜΜ";
    }
    var hour12 = ώρα> 12; ώρα - 12: ώρα;
    για (var min = 0; min <60; min + = mins) {
    var min0 = min <10; '0' + λεπτό: λ.
    επιλέξτε + = "+ hour12 +": '+ min0 + "+ ampm +";
    }
    }
    επιλέξτε + = ";
    επιστροφή επιλέξτε;

Ποια είναι η γνώμη σας;

Αυτός ο ιστότοπος χρησιμοποιεί το Akismet για να μειώσει το spam. Μάθετε πώς επεξεργάζονται τα δεδομένα των σχολίων σας.