javascript - 12 月年份错误的月份列表

标签 javascript jquery

$("select").change(function() {
  //var date = "2017-04-06"
  //var date = "2017-01-06"
  $(".appendhere").empty();
  var date = $("option:selected",this).text();
  var monthnumber = date.split("-")[1] - 1;
  var yearnumber = date.split("-")[0];
  var months = 12;
  var m_names = new Array("January", "February", "March",
    "April", "May", "June", "July", "August", "September",
    "October", "November", "December");
  for (var i = months - 1; i >= 0; i--) {
    var div = $('<div class="row" style="margin-top:6px;"><div class="col-md-6"><label class="col-md-6 col-form-label">' + yearnumber + " " + m_names[monthnumber] + '</label></div>');
    $(".appendhere").append(div)
    monthnumber == 11 ? monthnumber = 0 : monthnumber++;
    m_names[monthnumber] == "December" ? yearnumber++ : yearnumber + 0;
  }

}).change();
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<select>

<option>2017-04-06</option>
<option>2017-01-06</option>
</select>

<div class="appendhere"></div>

更改选择时,我想根据选择的日期附加月份和年份。

我可以添加月份和年份,但问题是 12 月的年份总是比当年早 1 年。

我知道这是小细节,但我无法指出我哪里做错了。

最佳答案

在条件运算符处用“January” 替换“December”

m_names[monthnumber] == "January" ? yearnumber++ : yearnumber + 0;

关于javascript - 12 月年份错误的月份列表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42570847/

相关文章:

javascript - 执行 Firebase 事务时如何检查 Node 的值?

javascript - 如何在服务器端 DataTable 中显示 Base64 图像?

javascript - jQuery show() 有有趣且意想不到的 "animation"效果

javascript - 延迟 JQuery 效果

jquery函数从不同的文件加载数据

javascript - 将 iPhone 检测添加到 jQuery 脚本

javascript - 如何迭代特定对象属性

javascript - 脚本和 setTimeout/setInterval 如何在 NodeJS 中协同工作?

javascript - 为什么球会在任意时间后粘在地上?

javascript如何运行相同的功能onLoad和onChange