在日期选择器中启用周末

时间:2017-01-11 07:04:49

标签: javascript jquery datepicker calendar-control

有一个网页忽略了周末,不允许用户选择周六或周日。我想启用它,在进行互联网搜索时,我发现下面给出的一段代码,我认为可能是造成这种情况。问题是我不知道要评论哪一行或我必须做些什么改变来启用周末。请帮忙

function datepick()
{
    var weekend_strtday = <?php echo $this->weekendDatailsArr[0]['weekendstartday']; ?>;
    var weekend_endday = <?php echo $this->weekendDatailsArr[0]['weekendday']; ?>;
    $('#from_date').datepicker({
                    beforeShowDay: function(date) {
                        var day1 = date.getDay();
                        return [(day1 != weekend_strtday && day1 != weekend_endday)];
                    },
    $('#to_date').datepicker({
                    beforeShowDay: function(date) {
                        var day2 = date.getDay();
                        return [(day2 != weekend_strtday && day2 != weekend_endday)];
                    },

1 个答案:

答案 0 :(得分:0)

要使用此方法,您需要添加JQuery UI,JQUery和JQUery基本主题css。

这是一个修改过的日期选择功能。

datepick()内,这些变量存储工作日 0(sunday) - 6(sataurday)无法使用的var weekend_strtday = 0; var weekend_endday = 6;

beforeShowDay

beforeShowDay: function(date) { var day1 = date.getDay(); return [(day1 != weekend_strtday && day1 != weekend_endday)]; } 函数

  

将日期作为参数并且必须返回数组的函数   用:

     

[0]:true / false表示此日期是否可选

     

[1]:要添加到日期单元格的CSS类名称或默认情况下的“”   介绍

     

[2]:此日期的可选弹出工具提示

     

在日期选择器之前,每天都会调用该函数   显示。

了解更多信息,请点击此处

http://api.jqueryui.com/datepicker/#option-beforeShow

true/false

我们正在检查当天是否等于周末并返回一个第一个索引为function datepick() { var weekend_strtday = 0; var weekend_endday = 6; $('#from_date').datepicker({ beforeShowDay: function(date) { var day1 = date.getDay(); return [(day1 != weekend_strtday && day1 != weekend_endday)]; } }); $('#to_date').datepicker({ beforeShowDay: function(date) { var day2 = date.getDay(); return [(day2 != weekend_strtday && day2 != weekend_endday)] } }); } datepick();的数组,表明该日是否可选。

<link rel="stylesheet" href="//code.jquery.com/ui/1.12.1/themes/base/jquery-ui.css">
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<script src="https://code.jquery.com/ui/1.12.1/jquery-ui.js"></script>
<form>
  From_date: <input id="from_date" type="text">
  To _date: <input id="to_date" type="text">
</form>
beforeShowDay

<强>更新

要显示您必须从配置中删除$('#from_date')的所有日期。

只需选择输入datepicker();并调用$('#from_date').datepicker(); $('#to_date').datepicker(); 方法。

$('#from_date').datepicker();
$('#to_date').datepicker();
  

检查下面的代码段,

<link rel="stylesheet" href="//code.jquery.com/ui/1.12.1/themes/base/jquery-ui.css">
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<script src="https://code.jquery.com/ui/1.12.1/jquery-ui.js"></script>
<form>
  From_date: <input id="from_date" type="text">
  To _date: <input id="to_date" type="text">
</form>
  var hfUserAutoId = me.form.getForm().findField('hfUserAutoId').getValue();
  this.uploadWinPanel = new vDemo.view.FileUpload({
    userId: hfUserAutoId
  });