JS日期控件只选周一至周五

日期控件只选周一至周五

JavaScript LamChin 发布于 2022-3-1 14:24 (编辑于 2023-10-27 15:43)
1min目标场景问卷 立即参与
回答问题
悬赏:10 F币 + 添加悬赏
提示:增加悬赏、完善问题、追问等操作,可使您的问题被置顶,并向所有关注者发送通知
共2回答
最佳回答
0
LamChinLv5见习互助
发布于2023-10-27 15:43

this._createCalendar = function(){var o = this.options;var self = this;if (this.options.need2BuildConfig === true && this.options.data) {this.options.data.resetStatus(this.createDependencePara4Data());var data = this.options.data.getData();if (data[0].data) {if (data[0].data.startDate) {var sd = new Date(data[0].data.startDate);if (!FR.isInvalidDate(sd)) {o.startDate = FR.date2Str(sd, 'yyyy-MM-dd');this.std = this._createStartDate(o.startDate, o.format, this.viewMode);}}if (data[0].data.endDate) {var ed = new Date(data[0].data.endDate);if (!FR.isInvalidDate(ed)) {o.endDate = FR.date2Str(ed, 'yyyy-MM-dd');this.edd = this._createEndDate(o.endDate, o.format, this.viewMode);}}}this.options.rebuildConfig = false;}this.datepicker = new FR.DatePicker({renderEl: this.$view,viewMode: this.viewMode,date: FR.str2Date(this.editComp.val(), o.format),dateFormat: o.format,startDate: this.std,endDate: this.edd,onDateUpdate:function(){if ($(':focus').length === 0) {self.editComp.focus();}self.editComp.val(FR.date2Str(this.getValue(), o.format));self.isValidateInput();self.fireEvent(FR.Events.AFTEREDIT);}});this.datepicker._loadDateData = function (table, date) {        if (!date) {            return;        }        var year = date.getFullYear(),            month = date.getMonth(),            day = date.getDate();        var today = new Date(),            TY = today.getFullYear(),            TM = today.getMonth(),            TD = today.getDate();        this.cache.showYear = year;        this.cache.showMonth = month;        var std = this.options.startDate,            edd = this.options.endDate;        table.$title.text(Date._MN[month] + ", " + year);        var nextDay = new Date(date);        nextDay.setDate(nextDay.getMonthDays() + 1);        if ((edd && nextDay > edd) || nextDay.getFullYear() > this.CONSTS.MAXYEAR) {            table.$nextm.addClass('disabled').removeClass('hover').data('disabled', true);        } else {            table.$nextm.removeClass('disabled').data('disabled', false);        }        var prevDay = new Date(date);        prevDay.setDate(0);        if ((std && prevDay < std) || prevDay.getFullYear() < this.CONSTS.MINYEAR) {            table.$prevm.addClass('disabled').removeClass('hover').data('disabled', true);        } else {            table.$prevm.removeClass('disabled').data('disabled', false);        }        date.setDate(1);        var day1 = (date.getDay() - this.CONSTS.FIRSTDAY) % 7;        date.setDate(0 - day1);        date.setDate(date.getDate() + 1);        var $frow = table.find('tbody').children().eq(0);        for (var i = 0; i < 6; i++) {            if (!$frow.length) {                break;            }            var $cell = $frow.children().eq(0);            $cell.addClass('week wn').text(date.getWeekNumber());            var iday;            for (var j = 0; j < 7; ++j, date.setDate(iday + 1)) {                $cell = $cell.next();                $cell.removeClass().data('nav', this.CONSTS.NAV['day']);                if (!$cell.length) {                    break;                }                iday = date.getDate();                $cell.text(iday);                //var current_month = (date.getMonth() == month);                var nextdate = new Date(date);                nextdate.setDate(iday + 1);                //var notnextmonth=(nextdate.getMonth() == month);                                if ( !current_month || (j !=5 && notnextmonth) ) {                    $cell.addClass('oday').data('disabled',true);                    continue;                }                var disabled = false;                if ((std != null && std > date) || (edd != null && edd < date)) {                    $cell.addClass('day disabled');                    disabled = true;                } else {                    $cell.addClass('day');                }                $cell.data('disabled', disabled);                if (!disabled) {                   // if (current_month && iday == day) {                   //     this.cache.selectedDate && this.cache.selectedDate.removeClass('selected');                   //     $cell.addClass('selected');                   //     this.cache.selectedDate = $cell;                   //     this.cache.showDay = iday;                    //}                    //if (date.getFullYear() == TY &&                    //    date.getMonth() == TM &&                    //    iday == TD) {                    //    $cell.addClass('today');                    //}                    var wday = date.getDay();                    if ([0, 6].indexOf(wday) != -1) {                        $cell.addClass("weekend");                    }                }            }            $frow = $frow.next();        }    }if (FR.Browser.isIE8() && this.$view.css('visibility') == 'hidden') {this.$view.css("visibility", "visible");} else {this.$view.show();}$(document).bind('mousedown', this, this.collapseIf);this.modifyPosition();var tr = $('tbody>tr',this.datepicker.$datetable);for( var i=0; i<tr.length; i++ ){var $days = $('td[class!="week wn"]',tr[i]);for( var j=0; j<$days.length; j++ ){var $day = $($days[j]);if( 5 != j && !$day.hasClass('oday')){    if(j==$days.length-1){        var $tmpdays = $('td[class!="week wn"]',tr[i+1]);        var $tmpday = $($tmpdays[0]);        if($tmpday.hasClass('oday')){            break;        }    }    else{        var $tmpday = $($days[j+1]);        if($tmpday.hasClass('oday')){            break;        }    }$day.data("disabled",true);$day.attr('class','oday');}}}}

最佳回答
0
小歆嵩Lv7初级互助
发布于2023-10-27 15:44

const today = new Date();

const dayOfWeek = today.getDay();

if (dayOfWeek >= 1 && dayOfWeek <= 5) {

  console.log('当前日期是工作日');

} else {

  console.log('当前日期是周末');

}

可以把today换成你的控件得到的数据

  • 1关注人数
  • 484浏览人数
  • 最后回答于:2023-10-27 15:44
    请选择关闭问题的原因
    确定 取消
    返回顶部