[英]How to add a day to pickadate v3 date
我已经建立了一个页面,其中包含2个pickadates。 一个用于开始日期,一个用于结束日期。
我也有一些复选框,标记为:
1天1个月1年
一旦用户从第一个选项中选择了一个日期。 他们可以从第二个约会中选择第二个日期。
但是,我想提供第二种选择。 如果他们检查1天,则第二个Pickadate将是1天+第一个Pickdate的结果。 同样的1个月和1年复选框。
反正有做到这一点吗?
我当前的HTML是:
<div class="inputdata">
<label>Timeframe:</label>
<span>
<div class="section__block section__block--scoped">
From:
<fieldset>
<input type="text" id="input_from">
</fieldset>
To:
<fieldset>
<input type="text" id="input_to">
</fieldset>
</div>
</span>
<div class="clear"></div>
<span><input id="x_timeframe" type="date" name="date_timeframe"></span>
<label></label>
<span id="x_timeframe_checkboxes">
<input type="radio" name="a_timeframe" id="radio4" value="d" class="css-checkbox"/>
<label for="radio4" class="css-label">1 Day</label>
<input type="radio" name="a_timeframe" id="radio5" value="w" class="css-checkbox" />
<label for="radio5" class="css-label">1 Week</label>
<input type="radio" name="a_timeframe" id="radio6" value="m" class="css-checkbox" />
<label for="radio6" class="css-label">1 Month</label>
<input type="radio" name="a_timeframe" id="radio8" value="n" class="css-checkbox" />
<label for="radio8" class="css-label">None</label>
</span>
</div>
只是为了熟悉,js包括:
<script src="/x/js/calendar/pickadate.js-3.4.0/lib/picker.js"></script>
<script src="/x/js/calendar/pickadate.js-3.4.0/lib/picker.date.js"></script>
<script src="/x/js/calendar/pickadate.js-3.4.0/lib/picker.time.js"></script>
<script src="/x/js/calendar/pickadate.js-3.4.0/lib/legacy.js"></script>
<script src="/x/js/calendar/pickadate.js-3.4.0/demo/scripts/main.js"></script>
<script src="/x/js/calendar/pickadate.js-3.4.0/lib/pickadate1454.js"></script>
+1天#from_picker
var from_picker = $('#input_from').pickadate(), to_picker = $('#input_from').pickadate();
from_picker.pickadate('picker').on('set', function (event) {
if (event.select) {
to_picker.pickadate('picker').set('select', from_picker.pickadate('picker').get('select').pick + 1 * 24 * 60 * 60 * 1000);
}
});
通过从date字段获取值并转换为js Date并添加Days或Moths,您可以仅使用JS来完成操作。
我总是创建7个函数以在JS中处理日期:addSeconds,addMinutes,addHours,addDays,addWeeks,addMonths,addYears。
您可以在此处查看示例: http : //jsfiddle.net/tiagoajacobi/YHA8x/
如何使用:
var now = new Date();
console.log(now.addWeeks(3));
这些是功能:
Date.prototype.addSeconds = function(seconds) {
this.setSeconds(this.getSeconds() + seconds);
return this;
};
Date.prototype.addMinutes = function(minutes) {
this.setMinutes(this.getMinutes() + minutes);
return this;
};
Date.prototype.addHours = function(hours) {
this.setHours(this.getHours() + hours);
return this;
};
Date.prototype.addDays = function(days) {
this.setDate(this.getDate() + days);
return this;
};
Date.prototype.addWeeks = function(weeks) {
this.addDays(weeks*7);
return this;
};
Date.prototype.addMonths = function (months) {
var dt = this.getDate();
this.setMonth(this.getMonth() + months);
var currDt = this.getDate();
if (dt !== currDt) {
this.addDays(-currDt);
}
return this;
};
Date.prototype.addYears = function(years) {
var dt = this.getDate();
this.setFullYear(this.getFullYear() + years);
var currDt = this.getDate();
if (dt !== currDt) {
this.addDays(-currDt);
}
return this;
};
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.