通过选择从开始日期算起的周数或月数来自动结束日期


Auto end date by selecting number of weeks or months from start date

我有周数的文本,我有日期选择器来选择开始日期。

如何根据我选择的周数确定结束日期?

如果我有月数的文本字段并根据选择开始日期获取结束日期怎么办?

我试过这个,但它不起作用:

<script type="text/javascript">
jQuery(document).ready(function($) {
 $('#start_date').bind('change', function() {
   var days = $('#week_number').val() * 7;
  var endDate = new Date($(this).val());
  endDate.setDate(endDate.getDate() + days);
  $('#end_week_return').val( (endDate.getMonth() + 1)+ '/' + endDate.getDate() + '/' + endDate.getFullYear() );
});
});
</script>

上面的代码似乎很好。问题将出在页面的其他部分,可能出在您的头 js 文件或 html 元素中。我创建了一个示例 html 文件,请尝试此操作,它可能会对您有所帮助。

<link rel="stylesheet" href="//code.jquery.com/ui/1.11.4/themes/smoothness/jquery-ui.css">
<script src="//code.jquery.com/jquery-1.10.2.js"></script>
<script src="//code.jquery.com/ui/1.11.4/jquery-ui.js"></script>
<script type="text/javascript">
jQuery(document).ready(function($) {
$( "#start_date" ).datepicker();
$('#start_date').bind('change', function() {
var days = $('#week_number').val() * 7;
var endDate = new Date($(this).val());
endDate.setDate(endDate.getDate() + days);
$('#end_week_return').val( (endDate.getMonth() + 1)+ '/' +    endDate.getDate() + '/' + endDate.getFullYear() );
 });
});
</script>
</head>
<body>
  No of weeks: <input type="text" id="week_number" />
  Start date: <input type="text" id="start_date" />
  End date:<input type="text" id="end_week_return" />
</body>