Отображение даты по умолчанию Значение HTML Форма iOS

0

Есть ли способ отображать текущую дату внутри кнопки, которая запускает сборщик дат в форме HTML на устройстве iOS?


Вот какие нагрузки в настоящее время:

Изображение 174551

Вот что я хотел бы, чтобы он автоматически загружался:

Изображение 174551


Вот код, который я использую в своей HTML-форме:

<input name="date" type="date" autofocus="autofocus" id="date" autocomplete="on" value="09-21-13"/>

Есть идеи?

Благодарю.

Теги:
date
forms

1 ответ

1
Лучший ответ

Вам нужно узнать текущую дату с помощью метода Date() в JavaScript и преобразовать ее в нотацию ISO 8601, yyyy-mm-dd, которая является тем, что input type=date должен использовать внутренне (поэтому value="09-21-13" атрибута value="09-21-13" является недопустимым и игнорируется - он будет ссылаться на 13-й день в 21-м месяце в 9-м году, и он даже формально недействителен, так как число месяцев слишком велико).

Пример:

<input name="date" type="date" autofocus="autofocus" id="date" autocomplete="on" />
<script>
function ISO8601(date) {
  var d = date.getDate();
  if(d < 10) d = '0' + d;
  var m = date.getMonth() + 1;
  if(m < 10) m = '0' + m;
  return date.getFullYear() + '-' + m + '-' + d;
}
document.getElementById('date').value = ISO8601(new Date());
</script>

Если вы используете библиотеки JavaScript, некоторые из них могут иметь функцию преобразования даты в нотацию ISO 8601, но простая функция выше также выполняет эту работу.

  • 0
    он покажет неправильный день, так как .getDate() возвращает число от 0 , также есть более простой способ: new Date().toISOString().split('T')[0]
  • 0
    Действительно, произошла ошибка, но не с getDate() (которая возвращает день месяца, 1 ... 31), а с getMonth() , который возвращает номер месяца, начиная с 0 (т. Е. Число в 0. ..12 диапазон). Исправлено это, добавив термин + 1 .

Ещё вопросы

Сообщество Overcoder
Наверх
Меню