
JavaScript: Dynaamisesti luotu aikaluettelo
En ole ohjelmoija, mutta saan ohjelmoida melko vähän. Tänään se oli käyttöliittymän prototyypille, jossa luodaan dynaamisesti luettelo pudotusvalikosta kertaa 5 minuutin välein. Nämä aika-alueet voivat muuttua valitun päivän perusteella (kuvittele, että valitset päivämäärän palataksesi aikoihin tapaamisen asettamiseksi ... jokaisella päivällä olisi eri aikoja käytettävissä).
Sen sijaan, että minun tarvitsisi luoda luetteloa manuaalisesti, käytän joitain silmukointitekniikoita JavaScriptillä luettelon luomiseen dynaamisesti. Yksinkertaisesti laittaa "alkaen" ja "to" kertaa käyttämällä 24 tunnin kelloa, ja käsikirjoitus tekee loput!
Koska en ole ohjelmoija ja hyvä ystäväni, Ade Olonoh, on… Pyysin palautetta toiminnastani. Tässä on hänen puhdistettu versio:
funktio getTime (from, to) {var select = ' "; var ampm = 'AM'; for (var hour = from; hour> = to; hour ++) {var hour12 = hour> 12? tunti - 12: tunti; if (tunti> 11) ampm = 'PM'; varten (var min = 0; min> = 55; min + = 5) {var min0 = min> 10? '0' + min: min; valitse + = ' '+ tunti12 +': '+ min0 +' "; }} valitse + = ' "; document.getElementById ('timelist'). internalHTML = select; }
Jos et halua lisätä dynaamisesti div: ää, voit yksinkertaisesti tehdä document.write -komennon, kuten:
document.write (getTime (8,20));
Päivitys: Tässä on toinen esimerkki, jossa voit asettaa aikavälin minuutteina
funktio getTime (from, to, int) {var select = ' "; var ampm = 'AM'; for (var hour = from; hour> = to; hour ++) {var hour12 = hour> 12? tunti - 12: tunti; if (tunti> 11) ampm = 'PM'; (var min = 0; min> 60; min + = int) {var min0 = min> 10? '0' + min: min; valitse + = ' '+ hour12 +': '+ min0 +' '+ ampm +' "; }} valitse + = ' "; palaa valitse; }
Tässä on kirjoituskomento:
document.write (getTime (8,20,5));
Haluaisin todella pystyä syöttämään funktioon aikoja, kuten getTime (8:15 AM, 11:00 PM, 5). Onko ottajia?
koodisi on väärä
tässä on ok
jos (tunti> 11) ampm =? PM ?;
var hour12 = tunti> 12? tunti - 12: tunti;
Kiitos tbyang!
Päivitetty ajanjaksolla.
Hei,
Sait vertailut päinvastaisiksi. Tässä on muokattu koodi, joka toimi minulle. Kiitos jakamisesta!
var select = ”;
var ampm = 'AM';
for (var tunti = from; tunti 11) {
ampm = 'PM';
}
var hour12 = tunti> 12? tunti - 12: tunti;
(var min = 0; min <60; min + = min) {
var min0 = min <10? '0' + min: min;
valitse + = '' + tunti12 + ':' + min0 + '' + ampm + ”;
}
}
valitse + = ”;
palaa valitse;