【发布时间】:2017-03-03 12:15:06
【问题描述】:
我的 html 中有两个输入字段,一个用于开始日期,另一个用于结束日期。我的网络应用程序背后有逻辑,即显示两个日期范围内的任何约会。而不是用户必须单击两个日期字段并在每个单独的字段上的两个不同的日历选择器中选择开始日期和结束日期,我希望实现一个将在开始日期输入字段上方的星期选择器,它允许您选择一个数周而不是一天。然后,当单击一周时,我希望开始日期输入字段显示一周的开始日期和显示一周结束日期的结束日期。
我一直在线并查看了很多关于 JSFiddle of week 选择器的示例,但我似乎找不到在选择器中选择一周时自动填充 2 个输入字段的示例。
有什么想法吗?
谢谢
编辑:
星期选择器脚本:
<script>
jQuery(function(){
initsetup("FORM_R06630");
jQuery("#search_input").hide();
setAsmSelect();
setRuntimeSelect();
});
jQuery(function() {
var startDate;
var endDate;
var selectCurrentWeek = function() {
window.setTimeout(function () {
jQuery('.week-picker').find('.ui-datepicker-current-day a').addClass('ui-state-active')
}, 1);
}
jQuery('.week-picker').datepicker( {
showOtherMonths: true,
selectOtherMonths: true,
onSelect: function(dateText, inst) {
var date = $(this).datepicker('getDate');
startDate = new Date(date.getFullYear(), date.getMonth(), date.getDate() - date.getDay());
endDate = new Date(date.getFullYear(), date.getMonth(), date.getDate() - date.getDay() + 6);
var dateFormat = inst.settings.dateFormat || $.datepicker._defaults.dateFormat;
jQuery('#startDate').text($.datepicker.formatDate( dateFormat, startDate, inst.settings ));
jQuery('#endDate').text($.datepicker.formatDate( dateFormat, endDate, inst.settings ));
selectCurrentWeek();
},
beforeShowDay: function(date) {
var cssClass = '';
if(date >= startDate && date <= endDate)
cssClass = 'ui-datepicker-current-day';
return [true, cssClass];
},
onChangeMonthYear: function(year, month, inst) {
selectCurrentWeek();
}
});
jQuery('.week-picker .ui-datepicker-calendar tr').live('mousemove', function() { $(this).find('td a').addClass('ui-state-hover'); });
jQuery('.week-picker .ui-datepicker-calendar tr').live('mouseleave', function() { $(this).find('td a').removeClass('ui-state-hover'); });
});
输入字段:
<tr>
<td class="ten td_left"><strong>START DATE </strong> Is in the range</td>
<td align="left" class="ten">from
<input class="mrcinput week-picker" id="R001" name="R001" size="8" title="R001" type="text" value="${select.R001}" /> to
<input class="mrcinput" id="S001" name="R001" size="8" title="S001" type="text" value="${select.S001}" /> <font color="red" id="msgR001">${select.errMsg_R001}</font></td>
</tr>
【问题讨论】:
-
请包含您已经完成的代码。
-
到目前为止,我已经添加了我的代码,但它没有选择一周的价值,它只使用您在弹出的日历中选择的日期填写开始日期输入字段。
标签: javascript jquery date