Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/408.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript jQuery日期选择器不再可选_Javascript_Jquery_Jquery Ui Datepicker - Fatal编程技术网

Javascript jQuery日期选择器不再可选

Javascript jQuery日期选择器不再可选,javascript,jquery,jquery-ui-datepicker,Javascript,Jquery,Jquery Ui Datepicker,我有一个jQuery日期选择器,它过去工作得很好。然而,从昨天开始,我一定改变了什么。当我将鼠标悬停在日历上时,什么都没有发生。当我点击日历时,没有任何效果。但是,我可以通过代码更改日历的行为。如您所见,我可以删除第一个日历中的“上一个”和“下一个”按钮。有什么我忘了检查的吗?为什么我不能再选择日历的任何日期?任何暗示都将不胜感激。顺便说一句,我检查了JSFIDLE上的代码,它正在工作:( 这是我的JavaScript: $(function() { var startDate;

我有一个jQuery日期选择器,它过去工作得很好。然而,从昨天开始,我一定改变了什么。当我将鼠标悬停在日历上时,什么都没有发生。当我点击日历时,没有任何效果。但是,我可以通过代码更改日历的行为。如您所见,我可以删除第一个日历中的“上一个”和“下一个”按钮。有什么我忘了检查的吗?为什么我不能再选择日历的任何日期?任何暗示都将不胜感激。顺便说一句,我检查了JSFIDLE上的代码,它正在工作:(

这是我的JavaScript

$(function() {
    var startDate;
    var endDate;

var selectCurrentWeek = function() {

    window.setTimeout(function () {
          $('#datepicker').find('.ui-datepicker-current-day tr').addClass('ui-state-hover');
          $('#datepicker').find('.ui-datepicker-next').remove();
          $('#datepicker').find('.ui-datepicker-prev').remove();
    }, 1);
}

$('#datepicker').datepicker( {
    showOtherMonths: true,
    selectOtherMonths: false,
    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);
        $('#calendar').weekCalendar('gotoWeek', date);
        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();
    }
});

$('#datepicker' ).datepicker( "option", $.datepicker.regional[ 'de' ] );
$('#datepicker').find('.ui-datepicker-next').remove();
$('#datepicker').find('.ui-datepicker-prev').remove();
$('#datepicker .ui-datepicker-calendar tr').live('mousemove', function() { $(this).find('td a').addClass('ui-state-hover'); });
$('#datepicker .ui-datepicker-calendar tr').live('mouseleave', function() { $(this).find('td a').removeClass('ui-state-hover'); });


    // handling datepicker classes
    var startDate;
    var endDate;

    var selectCurrentWeek_next = function() {

        window.setTimeout(function () {
        }, 1);
    }

    $('#datepicker_next_month').datepicker( {
        showOtherMonths: true,
        selectOtherMonths: true,
        onSelect: function(dateText, inst) {
            var date = $(this).datepicker('getDate');
            $('#calendar').weekCalendar('gotoWeek', date);
            selectCurrentWeek_next();
        },
        beforeShowDay: function(date) {
            var cssClass = '';
            return [true, cssClass];
        },
        onChangeMonthYear: function(year, month, inst) {
            selectCurrentWeek_next();
        }
    });

    $('#datepicker_next_month' ).datepicker( "option", $.datepicker.regional[ 'de' ] );
    $('#datepicker_next_month' ).datepicker().datepicker('setDate','+1m');
    $('#datepicker_next_month .ui-datepicker-calendar tr').live('mousemove', function() { $(this).find('td a').addClass('ui-state-hover'); });
    $('#datepicker_next_month .ui-datepicker-calendar tr').live('mouseleave', function() { $(this).find('td a').removeClass('ui-state-hover'); });
});
$(函数(){
var startDate;
var结束日期;
var selectCurrentWeek=函数(){
setTimeout(函数(){
$('#datepicker').find('.ui datepicker current day tr').addClass('ui-state-hover');
$('#datepicker')。查找('.ui datepicker next')。删除();
$('#datepicker')。查找('.ui datepicker prev')。删除();
}, 1);
}
$(“#日期选择器”)。日期选择器({
showOtherMonths:是的,
选择OtherMonths:false,
onSelect:函数(日期文本,inst){
var date=$(this.datepicker('getDate');
startDate=新日期(Date.getFullYear(),Date.getMonth(),Date.getDate()-Date.getDay());
endDate=新日期(Date.getFullYear(),Date.getMonth(),Date.getDate()-Date.getDay()+6);
$('日历').weekCalendar('gotoWeek',日期);
选择CurrentWeek();
},
beforeShowDay:功能(日期){
var cssClass='';

如果(date>=startDate&&date我最终发现了问题。我使用Google Chroms Element inspector发现另一个div覆盖了datepicker div。解决了这个问题后,一切都恢复正常:)

你的浏览器升级了吗?可能吧,但它在Chrome、Safari或Firefox中不起作用。你升级了你的jquery版本吗..我看到你正在使用..jquery-1.4.4.min.js..你升级到最新版本1.9.1了吗?不,我没有升级版本。
<div id="datepicker"></div>
<div id="datepicker_next_month"></div>
  <script type='text/javascript' src='libs/jquery-1.4.4.min.js'></script>
  <script type='text/javascript' src='libs/jquery-ui-1.8.11.custom.min.js'></script>
  <script type='text/javascript' src='libs/jquery-ui-i18n.js'></script>