如何从Date jQuery获取特殊月份

时间:2019-01-13 02:39:21

标签: javascript jquery date datetime

我需要按月显示日期。例如,当我从日期中选择31时,将显示月份(1,3,5,7,8,10,12)。 我已经创建了,但是月份的结果是1。

这是我的HTML

<label>Day: </label>
<input list="day" class="birth-day" maxlength="2">
<label>Month: </label>
<input list="month" class="birth-month" maxlength="2" disabled>

我的Javascript

function daysInMonth(day) {
  return new Date(day, 0).getMonth() + 1;
}
$('.birth-day').on('change',function() {
  var daysInSelectedMonth = daysInMonth($('.birth-day').val());
  $('#month').text($("<option></option>").attr("value", i).text(""));
  for (var i = 1; i <= daysInSelectedMonth; i++) {
    $('#month').append($("<option></option>").attr("value", i).text(i));
  }
})

这是我在Fiddle中的完整代码 谢谢

2 个答案:

答案 0 :(得分:0)

如果您的目标是从用户那里获取正确的日期值,那么有一种更简洁,更一致的方法可以做到这一点,请使用日期选择器组件。

您可以:

HTML:

<!doctype html>
<html>
<head>

  <link rel="stylesheet" href="//code.jquery.com/ui/1.11.2/themes/smoothness/jquery-ui.css">
  <script src="//code.jquery.com/jquery-1.10.2.js"></script>
  <script src="//code.jquery.com/ui/1.11.2/jquery-ui.js"></script>


</head>
<body>

<div>Selected Date: <input type="text" id="date_ex"></div>
<div id="date_val"></div>


</body>
</html>

JS:

  $('#date_ex').datepicker({
   onSelect: function(dateText, inst) {
    // date value now in dateText, show it in date_val DIV
    $('#date_val').text(dateText); 
   }
});

实时示例:

https://jsfiddle.net/dLumvn12/

答案 1 :(得分:0)

您可以使用getMonth()方法

要获取特定月份:

如果您仍然遇到问题,请点击链接:

https://www.w3schools.com/jsref/jsref_getmonth.asp