我有两个输入字段,其中包含date1和date2.Below这两个字段我需要一个按钮,当我按下它时,将创建一些输入字段,等于2个日期字段之间的月数。 例如,我有date1 = 2012-03-21和dat2 = 2012-06-21。它应该生成3个输入字段 你能帮我解决这个问题吗?
答案 0 :(得分:1)
我们假设HTML看起来像这样:
<div id="dateRange">
<input type="text" id="startDate">
<input type="text" id="endDate">
</div>
<div id="monthlyEntries"/>
现在,一个月不是统一的天数(“30天有9月,4月,6月和11月......”),所以我猜测的日期部分约会并不重要。
然后,调用更改(或点击按钮,或其他)的javascript看起来像这样:
function buildMonthlyEntries() {
var startDate = new Date(document.getElementById('startDate').value);
var endDate = new Date(document.getElementById('endDate').value);
if(startDate == "Invalid Date" || endDate == "Invalid Date") { return null; }
var entryCount = (endDate.getMonth() + endDate.getFullYear()*12) - (startDate.getMonth() + startDate.getFullYear()*12);
var monthlyEntries = document.getElementById('monthlyEntries');
monthlyEntries.innerHTML = "";
for(var i = 0; i < entryCount; i++) {
var textElement = document.createElement('input');
textElement.setAttribute('type', 'text');
textElement.setAttribute('id', 'entry' + i);
monthlyEntries.appendChild(textElement);
}
return null;
}
答案 1 :(得分:0)
您可以根据日期的差异运行循环。在伪代码中,它将类似于
var difference = month2 - month1;
for(x=0;x<difference,x++){
add inputfield;
}