JS и select.Как работать со списками
<select name="time"> <option value="minutes">Минуты</option> <option value="hour">Часы</option> <option value="day">Дни</option> <option value="week">Недели</option> </select> <span id="T">5</span> <input type="button" onClick="Ok()" value="Ok"> <script> function Time () { q=document.getElementById('T').innerHTML; alert(q); } </script> как мне сделать,чтоб при нажатии на кнопку можно было определить 5 недель или 5 минут? |
Brick,
:-? |
есть ли такая функция,только для селекта?
document.getElementById("№").innerHTML |
Brick,
document.querySelector('[name="time"]').value |
я не выкуриваю, как в функции показать, что я выдрал минуты, а не часы
c id ясно, а как с селект? |
Brick,
:) не пора ли хоть немножко почитать букварь? |
с селект разобрался использую
document.querySelector('select[name="time"]').value == 1 и if другая проблема появилась по сложнее: вот скрипт который использую: <script> document.addEventListener("DOMContentLoaded", function showTime() { var monthsArr = ["янв", "фев", "мар", "апр", "мая", "июн", "июл", "авг", "сен", "окт", "ноя", "дек"]; var daysArr = ["Воскресенье", "Понедельник", "Вторник", "Среда", "Четверг", "Пятница", "Суббота"]; var dateObj = new Date(); var year = dateObj.getFullYear(); var month = dateObj.getMonth(); var numDay = dateObj.getDate(); var day = dateObj.getDay(); var hour = dateObj.getHours(); var minute = dateObj.getMinutes(); var second = dateObj.getSeconds(); if (numDay < 10) numDay = "0" + numDay; if (hour < 10) hour = "0" + hour; if (minute < 10) minute = "0" + minute; if (second < 10) second = "0" + second; var out = daysArr[day] + ", " + numDay + " " + monthsArr[month] + " " + year + ", " + hour + ":" + minute + ":" + second; document.getElementById("time").innerHTML=out; return out; }); </script> проблема в следующем: вот строка T и строка k есть - это чисто. T=numDay + " " + monthsArr[month] + " " + year + "," + hour + ":" + (minute+k) + ":" + second; T - время которое сейчас, допустим мне надо время увеличить на k минут, я делаю так: U=numDay + " " + monthsArr[month] + " " + year + "," + hour + ":" + (minute+k) + ":" + second; если k, мешьше 60 все работает,а если k больше 60, например 100,получается бред 157 минут вопрос, как сделать,чтоб: секунды переходили в минуты минуты в часы часы в дни? цикл??? пожалуйста помогите ( |
Brick,
var dateObj = new Date(); var minute = dateObj.getMinutes(); dateObj.setMinutes(minute + k); minute = dateObj.getMinutes(); |
рони,
все так просто :( а я балбес :) |
рони,
спасибо |
<select name="time"> <option value="1">Минуты</option> <option value="2">Часы</option> <option value="3">Дни</option> </select> if (document.querySelector('select[name="time"]').value == 1) { k=((document.getElementById('number').value)*1); var dateObj = new Date(); var minute = dateObj.getMinutes(); dateObj.setMinutes(minute + k); M = dateObj.getMinutes(); U=numDay + " " + monthsArr[month] + " " + year + " в " + hour + ":" + M + ":" + second; } ваш код работает,но если у нас 59 минут ,а сейчас 00:40 по логике если 00:40+59 мин = 01:39,а он выдает 00:39 :( часы не прибавляются :( как сделать , чтоб ваел 64 мин у нас время увеличилось на 1 час и 4 мин. Т. Е. как сделать чтоб часы прибавлялись? |
вот решение, дата, увеличивается и всё верно
var D = new Date(); D.setMinutes(d.getMinutes() + k); только как изменить отображение даты на такой: <script> document.addEventListener("DOMContentLoaded", function showTime() { var monthsArr = ["янв", "фев", "мар", "апр", "мая", "июн", "июл", "авг", "сен", "окт", "ноя", "дек"]; var daysArr = ["Воскресенье", "Понедельник", "Вторник", "Среда", "Четверг", "Пятница", "Суббота"]; var dateObj = new Date(); var year = dateObj.getFullYear(); var month = dateObj.getMonth(); var numDay = dateObj.getDate(); var day = dateObj.getDay(); var hour = dateObj.getHours(); var minute = dateObj.getMinutes(); var second = dateObj.getSeconds(); if (numDay < 10) numDay = "0" + numDay; if (hour < 10) hour = "0" + hour; if (minute < 10) minute = "0" + minute; if (second < 10) second = "0" + second; var out = daysArr[day] + ", " + numDay + " " + monthsArr[month] + " " + year + ", " + hour + ":" + minute + ":" + second; document.getElementById("time").innerHTML=out; return out; }); </script> |
var monthsArr = ["янв", "фев", "мар", "апр", "мая", "июн", "июл", "авг", "сен", "окт", "ноя", "дек"]; d = new Date(); d.setMinutes(d.getMinutes() + k); var year = d.getFullYear(); var month = d.getMonth(); var numDay = d.getDate(); var hour = d.getHours(); var minute = d.getMinutes(); var second = d.getSeconds(); if (numDay < 10) numDay = "0" + numDay; if (hour < 10) hour = "0" + hour; if (minute < 10) minute = "0" + minute; if (second < 10) second = "0" + second U= numDay + " " + monthsArr[month] + " " + year + ", " + hour + ":" + minute + ":" + second; так как-то |
Часовой пояс GMT +3, время: 05:12. |