我是JQuery的新手,我未能找到解决问题的正确方法。
以下是我写的代码:
$(function() {
$("#from").datepicker({
//dateFormat: 'yy-mm-dd',
minDate: 0,
defaultDate: "+1w",
changeMonth: true,
numberOfMonths: 1,
dayNamesMin: ['Sun', 'Mon', 'Tue', 'Wed', 'Thu', 'Fri', 'Sat'],
onSelect: function(selectedDate) {
$("#to").datepicker("option", "minDate", selectedDate);
}
});
$("#to").datepicker({
//dateFormat: 'yy-mm-dd',
minDate: 0,
defaultDate: "+1w",
changeMonth: true,
numberOfMonths: 1,
dayNamesMin: ['Sun', 'Mon', 'Tue', 'Wed', 'Thu', 'Fri', 'Sat'],
onSelect: function(selectedDate) {
$("#from").datepicker("option", "maxDate", selectedDate);
}
});
});
我想将“#from”文本框设置为最接近的星期六(日期),如果今天是星期六之前,将“#to”文本框设置为星期日(日期),否则,将星期日(日期)放在两个文本框中作为默认日。
离。今天是2013年2月27日(周三),我想把03/02/2013放在“#from”和03/03/2013“#to”,如果今天是03/02/2013,我想把03/03/2013在两个文本框上。
我想过创建一个变量currDay并将今天的日期存储到它。由于datepicker的日期从0-6开始,然后我将计算当前日和即将到来的星期六/星期日之间的差异,然后将默认日期设置为currDay + diff
我该怎么做呢?
非常感谢你的帮助。
答案 0 :(得分:0)
如果您获得当周的当天,您可以从一周中的位置减去该数字,以获得所需的结果:
$(function () {
var d = new Date();
var n = d.getDay();
var from=6-n;
var to=7-n;
if(n==0)
from=0;
$("#from").datepicker({
//dateFormat: 'yy-mm-dd',
minDate: 0,
defaultDate: "+"+from+"d",
changeMonth: true,
numberOfMonths: 1,
dayNamesMin: ['Sun', 'Mon', 'Tue', 'Wed', 'Thu', 'Fri', 'Sat'],
onSelect: function (selectedDate) {
$("#to").datepicker("option", "minDate", selectedDate);
}
});
$("#to").datepicker({
//dateFormat: 'yy-mm-dd',
minDate: 0,
defaultDate: "+"+to+"d",
changeMonth: true,
numberOfMonths: 1,
dayNamesMin: ['Sun', 'Mon', 'Tue', 'Wed', 'Thu', 'Fri', 'Sat'],
onSelect: function (selectedDate) {
$("#from").datepicker("option", "maxDate", selectedDate);
}
});
});
答案 1 :(得分:0)
我可能没有很好地澄清我的问题...感谢r0m4n尝试。我设法自己解决这个问题。如果您在js部分粘贴以下代码,您将看到我正在尝试做的事情......
function toDay() {
var date = new Date();
var currDay = date.getDay();
var diff = 7 - currDay;
return (diff);
}
$(function () {
var saturday = new Date();
var sunday = new Date();
sunday.setDate(sunday.getDate() + toDay());
if (toDay != 0) {
saturday.setDate(saturday.getDate() - 1 + toDay());
} else {
saturday = sunday;
}
var comingSaturday = (saturday.getMonth() + 1) + '/' + saturday.getDate() + '/' + saturday.getFullYear();
var comingSunday = (sunday.getMonth() + 1) + '/' + sunday.getDate() + '/' + sunday.getFullYear();
$("#from").val(comingSaturday);
$("#to").val(comingSunday);
})
当然,我是新人......我可能犯了一些错误,请随意为我挑选错误。再次感谢。