Как вывести iso неделю и год из загрузчика даты? - PullRequest
0 голосов
/ 28 августа 2018

Я установил простой скрипт для вывода текущего года и объединения его с текущей неделей ISO.

JavaScript

<script type="text/javascript">
  Date.prototype.getWeekNumber = function(){
    var d = new Date(Date.UTC(this.getFullYear(), this.getMonth(), this.getDate()));
    var dayNum = d.getUTCDay() || 7;
    d.setUTCDate(d.getUTCDate() + 4 - dayNum);
    var yearStart = new Date(Date.UTC(d.getUTCFullYear(),0,1));
    return Math.ceil((((d - yearStart) / 86400000) + 1)/7)
  };
</script>

HTML

<h5 id="YYWW">Current ISO Week (YYWW) - <span  class="text-bold"><script type="text/javascript">document.write(new Date().getFullYear().toString().substr(-2)); document.write(new Date().getWeekNumber());</script></span></h5>

Как выбрать дату (текущую или будущую) и вывести ее YYWW? Я хочу, чтобы пользователи могли выбирать даты в будущем, а не только для текущего YYWW.

  <div class="form-group">
    <h5><label for="utm_date"><strong>ISO Date (by Datepicker)</strong></label></h5>
    <input type="week" id="datepicker" class="form-control">
  </div>

У меня есть кодовая ручка здесь Я продолжаю работать.

1 Ответ

0 голосов
/ 29 августа 2018

При изменении значения поля ввода вы можете извлечь номер недели и год, а затем показать его пользователю. (Учитывая, что вы используете jquery)

$('input[id=datepicker]').change(function() {
  var val = $("#datepicker").val();
  var splitArr = val.split("-");
  var finalVal = splitArr[0].substring(splitArr[0].length-2, splitArr[0].length) + splitArr[1].substring(splitArr[1].length-2, splitArr[1].length);
  $("#selectedWeek").text(finalVal);

});

Обновлено Пример Codepen

Примечание. Какую библиотеку начальной загрузки вы используете? В настоящее время я внес изменения с учетом родного Chrome DatePicker. Подскажите библиотеку и я обновлю код

...